如何刷新jsTree的内容?

问题描述 投票:0回答:6

我已经使用返回 JSON 数据的 AJAX 调用加载了 jsTree。如何刷新树以便它重新加载其内容?

jquery jstree
6个回答
78
投票

事实证明就像打电话一样简单:

   tree.jstree("refresh");

73
投票

在版本 3 中,您可以重新加载树:

$('#treeId').jstree(true).settings.core.data = newData;
$('#treeId').jstree(true).refresh();

26
投票
var tree = jQuery.jstree._reference("#files");
tree.refresh();

var tree = jQuery.jstree._reference("#files");
var currentNode = tree._get_node(null, false);
var parentNode = tree._get_parent(currentNode);
tree.refresh(parentNode);

12
投票

对于 jstree3 。我使用 destroy() 函数并再次创建运行 jstree() 函数的树


2
投票

$('#treeId').data('jstree', false).empty().jstree(json);


0
投票

我的jsTree插件版本是3.3.15

 export function jsTreeUpdate(demo_id,treeData) {
let instance = $('#' + demo_id).jstree(true);
// set new data
instance.settings.core.data = treeData;
//important to refresh the tree, must set the second parameter to true
instance.refresh(false,true);

}

上面的代码是更新jsTree Node并显示新的treeData对应状态的重要函数。

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.