如何使dynatree标题中的span-element可单击

时间:2013-12-13 09:47:59

标签: javascript jquery dynatree

我使用dynatree来获取树视图。当我点击节点的span元素i时。即Trowin Druisheim 1 <span class='seeding_list'>3</span>,然后应触发点击事件,但事件不会触发。

以下是我用过的代码:

$('.seeding_list').click(function() {
    alert($(this).text());
});

你可以在这个小提琴中看到更多:http://jsfiddle.net/aA76N/6/

2 个答案:

答案 0 :(得分:2)

事件不会触发,因为在您附加点击处理程序时span元素不存在。

要为尚未存在的元素附加事件处理程序,您可以使用delegated event handler

  

委托事件的优势在于它们可以处理来自稍后添加到文档的后代元素的事件。通过选择在附加委托事件处理程序时保证存在的元素,您可以使用委派事件来避免频繁附加和删除事件处理程序的需要。这个元素可以是容器元素......

这意味着,您可以使用现有元素,例如div#tree-teamdiv.panel-body

$('#tree-team').on('click', '.seeding_list',function() {
    alert($(this).text());
});

请参见修改后的JSFiddle

答案 1 :(得分:1)

试试这个:

$(document).on("click", ".seeding_list", function(){
    alert($(this).text());
});