Jstree create_node 在正确的位置

Jstree create_node in correct place

我需要创建一个节点并将其放在另一个特定节点的旁边。

我看了jsTree的文档,我看到"create_node"方法有一个选项,叫做位置,这个选项应该是插入节点的位置,有'last' , 'first' 和 'name of node' 可能的值。在 google 中寻找答案,我找到了 'inside'、'after' 和 'before'。

最后和第一个不能解决我的问题,但我试过'inside'、'before'、'after'、节点名称、节点上的文本、节点的id、 "#"+node's_id 和子节点的父数组中的节点索引,但其中 none 有效。

你知道如何在特定节点之后创建节点吗?

是的。首先获取选定的节点 ID,然后获取其位置。像这样:

    var selectedNode = $('#tree').jstree('get_selected', true)[0],
    newPos = $('#'+selectedNode.parent+' li').index( $('#'+selectedNode.id) )+1;
    $('#tree').jstree('create_node', '#'+selectedNode.parent, 'New node', newPos);

检查fiddle:Fiddle