Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/439.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jsTree 3-选择动态加载树的下一个/上一个节点_Javascript_Jquery_Jstree - Fatal编程技术网

Javascript jsTree 3-选择动态加载树的下一个/上一个节点

Javascript jsTree 3-选择动态加载树的下一个/上一个节点,javascript,jquery,jstree,Javascript,Jquery,Jstree,我有一个带有延迟加载的jsTree。我希望能够使用外部函数选择下一个和上一个节点。api建议使用tree.get_next_dom(),但这似乎只适用于已经加载的节点,而不适用于可能需要先加载的节点 $("[href='#next']").click(function () { var tree = $('#container').jstree(true), curr = tree.get_selected(false); tree.deselect_all();

我有一个带有延迟加载的jsTree。我希望能够使用外部函数选择下一个和上一个节点。api建议使用tree.get_next_dom(),但这似乎只适用于已经加载的节点,而不适用于可能需要先加载的节点

$("[href='#next']").click(function () {
    var tree = $('#container').jstree(true),
        curr = tree.get_selected(false);
    tree.deselect_all();
    var n = tree.get_next_dom(curr);
    tree.select_node(n);
});
有关显示延迟加载的示例,请参见full fiddle。。


所以“下一步”将查看节点是否有子节点,然后展开它,如果需要加载。Previous必须查看get_prev_dom,然后展开它,然后可能(递归地)展开其中的所有最后节点,以便将选择放在最前面的节点上。我做这件事有点迷路。

也许我已经解决了,但我在这里留下一个建议。 在方法调用“tree.diselect_all();”之后,调用“tree.open_all()”方法

真诚地

Charles Oliveira

当在树中后退时(使用get_prev_dom),它应该等待上一个节点展开,然后直接在所选节点上方获取项目(应该是最后加载的节点)。它取而代之的是下一个同级(无论哪种方式设置为strict)。或者我看错了文件。
$ ("[href = '# next']"). click (function () {
    var tree = $ ('# container'). jstree (true)
    curr = tree.get_selected (false);
    tree.deselect_all ();
    tree.open_all ();
    var n = tree.get_next_dom (curr);
    tree.select_node (n);
});