我创建了一个jstree,我遇到了一个问题,即通过jstree的id获取节点。 当我使用get_node时,我收到一个错误:
TypeError:$(...)。jstree.get_node不是函数
这是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获取节点?这段代码有什么问题?
答案 0 :(得分:9)
试试这个:
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上的文档。
答案 1 :(得分:5)
要使节点使用此:
$('#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
答案 2 :(得分:0)
应该帮助这个人
.on("hover_node.jstree", function (e, data) {
let node_id = data.node.id
let block = data.instance.get_node(node_id, true)
...