【问题标题】:jsTree can't find node by IDjsTree无法通过ID找到节点
【发布时间】:2017-01-12 22:09:36
【问题描述】:

让 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 of children = 217。

“myIDstring”是从我在 console.log(t) echo 的 javascript 控制台中钻取的节点之一的 id 属性中剪切和粘贴的。

console.log(n);只回显“假”。

如果我尝试 t.find() 我得到 find() is not a function error in the console.

van n = $('#myTree').jstree(true).get_node("myIDstring"); 失败与 var n = t.get_node();

谢谢。

PS:是的。我知道我也可以了解 dta 的价值。但我的目标是不在 .no('loaded.jstree') 中使用此代码

【问题讨论】:

    标签: javascript jquery jstree


    【解决方案1】:

    当您刚刚加载根节点时,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);
    }
    

    【讨论】:

    • 一旦我看到它就有意义
    猜你喜欢
    • 2012-05-10
    • 1970-01-01
    • 2016-08-06
    • 2012-04-25
    • 2012-05-10
    • 2017-02-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多