2015-07-21 1060 views
3

我已经创建了一个jstree,并且通过jstree的id获取节点时遇到问题。 当我使用get_node,我得到一个错误:如何通过Jstree中的ID获取节点

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 
}); 

如何通过ID在jsTree得到节点?这段代码有什么问题?

+0

请将您的initDashboardArchiveTree代码尽可能填满 – clevertension

回答

6

试试这个:

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

新增加:true

OR

更改此:

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

要这样:

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

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

阅读关于jstree/JSON的文档。

4

要得到节点使用这样的:
$('#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 
+1

您的项目拯救了timeeeeeeeeeeee的世界alooooot。(谢谢* 1000000 )次,先生为第一类树。 –