如何在jquery中获取li元素的click事件?

时间:2014-05-04 13:28:02

标签: javascript jquery jstree

是否可以告诉我如何点击li点击事件。我使用li动态制作jstree元素。 我按add按钮,在li内部创建jstree元素。我们可以获得点击事件吗? 按add两次。生成li元素。我想获得li。点击事件的{id。警告其ID。 http://jsfiddle.net/GS4u3/4/

$('#uu').click(function () {
var ref = $('#tree').jstree(true),
    sel = ref.get_selected();

if (!sel.length) {
    alert('thank')
    sel = ref.create_node("#", {"id" : node_count+1, "text" : node_count+1});
    node_count++;
} else
{
    sel = sel[0];
    sel = ref.create_node(sel, {"id" : node_count+1, "text" : node_count+1}); 
    node_count++;
}
/*if (sel) {
    ref.edit(sel);
}*/
ref.deselect_all();

});

1 个答案:

答案 0 :(得分:1)

这可以胜任。由于li是动态创建的,因此您需要delegate,它已被on取代。

$("#tree").on("click", "li > a", function() {
    var id = $(this).closest("li").attr("id");
    $(this).siblings(".jstree-icon").click();
    alert(id);
});

编辑:只使文字可点击而不是箭头。

EDIT2:http://jsfiddle.net/GS4u3/8/(编辑4,更新了您的更改的新jsfiddle)

EDIT3:已编辑的代码,用于在单击文本时展开树。