d3.jsのデータを使用して動的に生成された要素にクリックイベントをバインドしようとしています。
d3.select("#mylist").selectAll('li').data(data_arr).enter().append("li").html(
function(d)
{
var element = document.createElement('div');
element.innerHTML = '<div id="innerDiv"></div>';
var divToClick = element.querySelector('#innerDiv');
//Using jquery to get cross browser event binding
$(divToClick).click(function(){
alert('hello!');
});
return element.innerHTML;
});
問題は文字列(innerHTML)を返すことですが、要素を返すと機能しません。何か助けはありますか?
(実際のコードははるかに複雑です。ここに重要な部分をコピーしました)。