2013-02-25 60 views
1

我對d3很新,並試圖合併一些jQuery和d3功能。基本上我想要一個可以讓我的用戶編輯的段落列表。結合jquery的jedit和d3

有這個叫的jEdit這完全適用於我需要一個不錯的jQuery插件:http://www.appelsiini.net/projects/jeditable

我能得到這個沒有問題的工作,但是當我嘗試使用D3生成我的段落中,我似乎是運氣不好。

我有我的jQuery插件以下功能:

$(function() { 
     $(".editable_comments").editable("save.php", { }); 
}); 

下列哪些元素上正常工作:

<p class="editable_comments">test</p> 

但沒有這麼多以下D3代碼:

<div id="comments" style="float:left; width:50px; padding-top:33px;"> 

</div> 

<script type="text/javascript" > 

d3.json("json_data.php?", function(data) { 

d3.select("#comments").selectAll("p") 
    .data(data) 
    .enter() 
    .append("p") 
    .text(function(d) {return d.NAME;}) 
    .attr("class", "editable_comments"); 

}); 
</script> 
+1

它以什麼方式不起作用? – 2013-02-25 16:24:47

+0

此外,上下文不清楚。我懷疑對「.editable」的調用可能在d3代碼之前完成,因此d3生成的元素不能編輯。沒有完整的背景,我們不能說。 – cmonkey 2013-02-25 16:29:35

+0

對不起,我將在下次更加詳盡。你說對了.editable的調用是在d3代碼之前完成的,這就是爲什麼它不起作用。我將調用轉移到了d3.json函數的末尾,並且它現在可以工作。 – MSJ 2013-02-25 18:18:53

回答

0

我在d3代碼運行之前調用了我的.editable,這就是爲什麼它不是「工作」或更多spec爲什麼我無法編輯d3生成的段落。

一旦我將.editable調用移動到我的d3.json函數末尾