我可以轻松地在页面上实现 jsTree。
我从各个网站上的众多建议中尝试了很多不同的东西。
$('#myTree').jstree({
....
})
.on('loaded.jstree', function (e, dta) {
var t = $('#myTree').jstree(true);
var n = t.get_node("myIDstring");
console.log(t);
console.log(n);
});
我在写这篇文章之前的最后一次尝试是尝试使用 .on(loaded.jstree) 回调,如上所示。但这与我尝试获取节点的位置没有任何区别。总是相同的结果。
console.log(t) 证明我有一棵树。在本例中,我看到我有 cnt 个 child = 217。
“myIDstring”是从我在 console.log(t) echo 的 JavaScript 控制台中深入查看的节点之一的 id 属性中剪切并粘贴的。
console.log(n);仅回显“假”。
如果我尝试 t.find(),我会在控制台中得到 find() is not a function 错误。
van n = $('#myTree').jstree(true).get_node("myIDstring"); 失败与 var n = t.get_node(); 相同
谢谢。
PS:是的。我知道我也可以了解 dta 的值(value)。但我的目标是不使用 .no('loaded.jstree') 内部的代码
最佳答案
当您刚刚加载根节点时,loaded.jstree
会被触发。最好使用如下所示的 ready.jstree
事件。另请查看演示 - Fiddle Demo
$('#myTree')
.jstree({
...
})
.on('ready.jstree', function(){
var t = $('#myTree').jstree(true);
var n = t.get_node("myIDstring");
console.log(t);
console.log(n);
}
关于javascript - jsTree无法通过ID找到节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41623882/