jstree:jquery.find 仅适用于第一级节点
jstree: jquery.find working just for nodes of the first level
为什么这段代码不起作用?
<div id="jstree">
<ul>
<li id="x1">AAA004
<ul>
<li id="x2">AAA005</li>
<li>AAA006
<ul>
<li id="x3">AAA007
<ul>
<li>AAA008</li>
<li>AAA009</li>
</ul>
</li>
<li>AAA010</li>
</ul>
</li>
</ul>
</li>
<li>AAA011</li>
<li>AAA012</li>
</ul>
</div>
和 javascript:
$(function () {
$('#jstree').on('ready.jstree', function (e, data) {
x = $('#jstree').find("li[id='x3']");
alert(x[0].id);
}).jstree();
});
试图找到第一级的节点有效!!!但与其他人没有。将找到 id="x1" 的节点,但不会找到 id="x2" 或 id="x3" 的节点。
加载页面时 - DOM 中没有 li#x3
节点。查看 jstree
的 result。您的代码会在页面加载后立即运行。
但是如果您打开列表 - 是的,li#x3
会出现,这将在您的代码运行后发生。
为什么这段代码不起作用?
<div id="jstree">
<ul>
<li id="x1">AAA004
<ul>
<li id="x2">AAA005</li>
<li>AAA006
<ul>
<li id="x3">AAA007
<ul>
<li>AAA008</li>
<li>AAA009</li>
</ul>
</li>
<li>AAA010</li>
</ul>
</li>
</ul>
</li>
<li>AAA011</li>
<li>AAA012</li>
</ul>
</div>
和 javascript:
$(function () {
$('#jstree').on('ready.jstree', function (e, data) {
x = $('#jstree').find("li[id='x3']");
alert(x[0].id);
}).jstree();
});
试图找到第一级的节点有效!!!但与其他人没有。将找到 id="x1" 的节点,但不会找到 id="x2" 或 id="x3" 的节点。
加载页面时 - DOM 中没有 li#x3
节点。查看 jstree
的 result。您的代码会在页面加载后立即运行。
但是如果您打开列表 - 是的,li#x3
会出现,这将在您的代码运行后发生。