簡體   English   中英

jstree jquery插件 - 獲取父級的所有子節點和子子節點

[英]jstree jquery plugin - Get all child and sub child nodes of parent

我正在使用jsTree jquery插件

我試圖獲取所選父節點的所有節點和子節點。 但不知何故,除非我使用遞歸,否則它不起作用。 jsTree有一種更好的固有方法嗎?

你可以使用這個選擇器獲得完整的樹: $("#demo1").find("li > a")

我嘗試了以前的解決方案,它不能使用最新版本的jsTree(v3.2.1)。 以下是獲取父節點和子節點的更新解決方案。

$("#myTree").bind('selected_node.jstree', function (node, data) {
    var selectedNodes = $("#myTree").jstree(true).get_json(data.node.id, { flat: true });
    for (var i = 0; i < selectedNodes.length; i++) {
       // Apply logic here
       // ...
       // ...
       // ...
    }
});

我找到了一種方法來做到這一點。 在我的情況下,我使用xml作為樹的數據源。 我以下列方式將open_node事件綁定到jstree。 請注意,即使我使用的是xml,內部結構也是html數據的結構。

// jsTree Configuration hash
var jsTreeConfig = {};

$("#demo1").jstree( jsTreeConfig )
            .bind('open_node.jstree', function( e, data ) {
                var parentObj = data.rslt.obj; // parent object
                var jstreeInstance = data.inst; // jstree instance
                $(data.rslt.obj).find("li").each( function( idx, listItem ) {
                    var child = $(listItem); // child object
                    // do Stuff with child which can be any level of hierarchy depth
                    // ...
                });
            });

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM