获取js树的parent和childid

get the parent and child id of js tree

我使用的是jsTree 3.3.1,下图是生成的树。现在你可以看到我选择了 D 和 E,然后它的 parents(B and C) 也被选中了。我想获得选定的 parents(B 和 C) id 以及孩子 (D 和 E)。我使用了以下功能,但它对我不起作用。我还发现 this url 对我不起作用。非常感谢任何帮助。

Image

var arr = new Array();
$("#testtree").jstree('get_checked').each(function(index) {
arr.push($(this).attr('id'));
});

get_checked 返回的结果是一个普通的 id 数组,而您正试图将其作为 jQuery 集合进行迭代。此外,您还需要获取状态未定的 parents 的 ID。所以你可以使用如下代码。还要检查演示 - Fiddle Demo

  var arr = $("#testtree").jstree('get_checked');

  $("#testtree").find(".jstree-undetermined").each(
    function(i, element) {
        arr.push( $(element).closest('.jstree-node').attr("id") );
    }
);