Javascript &引用;“堆栈空间不足”;通过AJAX调用填充jsTree时

Javascript &引用;“堆栈空间不足”;通过AJAX调用填充jsTree时,javascript,jstree,Javascript,Jstree,我必须通过ajax调用用来自DB的数据填充jsTree。示例数据如下所示。如果仔细观察,第二个节点(Node2)是第一个节点(Node1)的子节点,第三个节点是第二个节点的子节点,但第三个节点的id是Node2。这是造成问题,而不是显示一棵树,它显示我…加载。。。签字 $('#tree').jstree({ 'core' : { 'data' : [ { "id" : "Node1",

我必须通过ajax调用用来自DB的数据填充jsTree。示例数据如下所示。如果仔细观察,第二个节点(Node2)是第一个节点(Node1)的子节点,第三个节点是第二个节点的子节点,但第三个节点的id是Node2。这是造成问题,而不是显示一棵树,它显示我…加载。。。签字

 $('#tree').jstree({
        'core' : {
            'data' : [                  
                { "id" : "Node1", "parent" : "#", "text" : "Root node" },
                { "id" : "Node2", "parent" : "Node1", "text" : "Child 1" },
                { "id" : "Node2", "parent" : "Node2", "text" : "Child 2" },
            ]
        }
    });
我的名字在这里


这只是一个样本数据。实际数据包含ID部分中的数字,我将进一步使用该ID在该节点的选择事件中获取更多数据。

您的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" },
        ]
    }
});

这是一个代码笔,其中包含工作代码:

正如我所说,我正在通过一个AJAX调用填充树,该调用从我的Spring控制器中带来JSON格式的数据。因此,在准备JSON对象时,我创建对象的方式将使我的树id与循环中各自的父id保持唯一


抱歉,由于公司政策限制,未在此处发布示例代码

嘿,这不是打字错误。这就是问题所在。我在描述中也提到了同样的问题,即两个节点在其ID部分中具有相同的值。您无法使其与具有相同ID的节点一起工作。Id必须是唯一的。是的,我在每个Id和他们各自的家长文本中添加了一些额外的唯一文本。所以,你能“关闭”这个问题吗?完成。将在2天内接受相同的服务。这是一种约束。