jQuery 如何在Jstree中通过ID获取节点

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/31551443/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-26 16:48:42  来源:igfitidea点击:

How to get node by ID in Jstree

jqueryjstree

提问by ZSH

I have created a jstree and i have a problem with getting node by id of jstree. when i use get_node, i get an error:

我创建了一个 jstree 并且我在通过 jstree 的 id 获取节点时遇到了问题。当我使用 get_node 时,出现错误:

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

类型错误:$(...).jstree.get_node 不是函数

this is html code:

这是 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>

this is the javascript:

这是javascript:

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

How to get node by id in jsTree?What's wrong with this code?

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

回答by Lansana Camara

Try this:

尝试这个:

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

New addition: true

新增: true

OR

或者

Change this:

改变这个:

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

To this:

对此:

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


Get the JSON of the parent and find the children.

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

Read the documentation on jstree/JSON.

阅读有关jstree/JSON的文档。

回答by vakata

To get the node use this:
$('#dashboardTree').jstree(true).get_node('1');

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

If you need the actual DOM node, use this: $('#dashboardTree').jstree(true).get_node('1', true);

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

But only invoke this once the tree is ready:

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

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