我有一个生成类似的jstree:
<ul>
<li id="BA"><a href="#"> Block Address </a>
<ul>
<li id="SA"><a href="#">Street Address</a></li>
<li id="C"><a href="#">City</a></li>
<li id="P"><a href="#">Province</a></li>
</ul>
</li>
我必须找到所选节点的最后一个子节点,在本例中为Block Address
。我确实尝试过使用:
var id = data.rslt.obj.attr("id");
var last_child = $("#"+id + "li:last-child").attr("id");
alert(last_child);
我想在弹出框中显示P
。有人可以帮助我,为什么要告诉我做错了什么?
答案 0 :(得分:1)
所以我终于找到了解决方案,感谢https://stackoverflow.com/users/1586880/null和他的建议。
我不是在找最后一个孩子,而是最后一个孩子:
var id = data.rslt.r.attr("id");
alert($("#"+id).find("li:last-child").attr("id"));
再次感谢!
答案 1 :(得分:0)
在li:last-child
之前添加空格:
$("#"+id + " li:last-child").attr("id");
^ - Here
当您搜索后代<li>
元素时,您当前的选择器将呈现为:
"#<IDhere>li:last-child"
,这是不正确的。