Jstree中如何通过ID获取节点

How to get node by ID in Jstree

我创建了一个 jstree,但我无法通过 jstree 的 ID 获取节点。 当我使用 get_node 时,出现错误:

TypeError: $(...).jstree.get_node is not a function

这是html代码:

<div style="height: 75%; margin: 0; width: 100%;">
                    <div id="dashboardTree" style="border: 0; height: 99%; margin: 0; margin-top: 2px; overflow: auto; width: 99%;">
                    </div>
                </div>

这是 javascript:

$(document).ready(function () {
initDashboardArchiveTree();//Initial tree
var node = $('#dashboardTree').jstree(true).get_node('1')//get that error
});

jsTree中如何通过id获取节点?这段代码有什么问题吗?

试试这个:

var node = $('#dashboardTree').jstree(true).get_node('1, true')

新增:true

改变这个:

var node = $('#dashboardTree').jstree(true).get_node('//something')

为此:

var node = $('#dashboardTree').jstree(true).find('//something');

获取父项的 JSON 并找到子项。

阅读 jstree/JSON 上的文档。

要获取节点,请使用:
$('#dashboardTree').jstree(true).get_node('1');

如果您需要实际的 DOM 节点,请使用: $('#dashboardTree').jstree(true).get_node('1', true);

但只有在树准备好后才调用它:

$('#dashboardTree').on('ready.jstree', function (e, data) {
  var node = data.instance.get_node('1');
})
initDashboardArchiveTree(); //Initial tree

应该帮助这个:


.on("hover_node.jstree", function (e, data) {
    let node_id = data.node.id
    let block   = data.instance.get_node(node_id, true)
...