JSTree,遍历编辑每个节点
JSTree, traverse and edit each nodes
我是 JSTree 的新手,但很想知道如何遍历 jstree 来编辑每个节点?
我写了一个递归函数来遍历每个节点,但对我来说奇怪的是,
- 我使用 var treeData = 取出数据
$('tree').get_json(真);
我将这些数据放入函数中,traverse(treeData);
traverse(treeData){ //在这里做一些编辑工作。
遍历(树数据的孩子);
}
有线,遍历完成后,什么都没有改变。
我已经将 'check_callback' 设置为 true。
有人可以帮忙吗?
最好的祝福
迈克尔
使用 get_json
你只能得到 json 对象。要更改节点,您必须访问它们。您还必须使用 redraw
函数根据更改的数据更新节点。
您的功能示例如下所示:
function traverse(node) {
node.text += ' too';
for (var i=0, len = node.children.length; i<len; i++) {
var childNode = $("#tree").jstree().get_node(node.children[i]);
traverse(childNode);
}
}
var treeData = data.node;
traverse(data.node);
$('#tree').jstree().redraw(true);
检查 fiddle - Fiddle
我是 JSTree 的新手,但很想知道如何遍历 jstree 来编辑每个节点? 我写了一个递归函数来遍历每个节点,但对我来说奇怪的是,
- 我使用 var treeData = 取出数据 $('tree').get_json(真);
我将这些数据放入函数中,traverse(treeData);
traverse(treeData){ //在这里做一些编辑工作。 遍历(树数据的孩子); }
有线,遍历完成后,什么都没有改变。 我已经将 'check_callback' 设置为 true。
有人可以帮忙吗? 最好的祝福 迈克尔
使用 get_json
你只能得到 json 对象。要更改节点,您必须访问它们。您还必须使用 redraw
函数根据更改的数据更新节点。
您的功能示例如下所示:
function traverse(node) {
node.text += ' too';
for (var i=0, len = node.children.length; i<len; i++) {
var childNode = $("#tree").jstree().get_node(node.children[i]);
traverse(childNode);
}
}
var treeData = data.node;
traverse(data.node);
$('#tree').jstree().redraw(true);
检查 fiddle - Fiddle