我必须使用来自DB的数据通过ajax调用填充我的jsTree。示例数据类似于以下数据。如果仔细观察,第二个节点(Node2)是第一个节点(Node1)的子节点,第三个节点是第二个节点的子节点,但第三个节点的id是 Node2 。这是创造问题,而不是显示一个树,它显示我... loading ... sign。
$('#tree').jstree({
'core' : {
'data' : [
{ "id" : "Node1", "parent" : "#", "text" : "Root node" },
{ "id" : "Node2", "parent" : "Node1", "text" : "Child 1" },
{ "id" : "Node2", "parent" : "Node2", "text" : "Child 2" },
]
}
});
我的jsfiddle请点击。
它只是一个样本数据。实际数据包含ID部分中的数字,我进一步使用该ID来获取该节点的选择事件的更多数据。
答案 0 :(得分:0)
您的JS代码中有一个拼写错误:两个节点共享相同的id
。
$('#tree').jstree({
'core' : {
'data' : [
{ "id" : "Node1", "parent" : "#", "text" : "Root node" },
{ "id" : "Node2", "parent" : "Node1", "text" : "Child 1" },
{ "id" : "Node3", "parent" : "Node2", "text" : "Child 2" },
]
}
});
这是一个包含工作代码的Codepen:http://codepen.io/adrenalinedj/pen/VarWrp
答案 1 :(得分:0)
正如我所说,我通过一个AJAX调用填充树,该调用从我的Spring控制器中以JSON格式提供数据。因此,在准备JSON对象时,我正在以这样的方式创建对象,这将使我的树id在其循环中的各自父ID也是唯一的。
因公司政策限制而未在此处发布示例代码的道歉。