Jstree获取所有子节点

3
我正在使用Jstree插件,想获取所选节点的所有子节点,而无需展开它。我查了一下资料,发现可以使用以下代码来实现:
checked = $("#tree").jstree("get_checked",null,true);
但这对我不起作用,我需要先展开/打开节点才能获取其子节点。
以下是我使用的示例代码: $("#treeview-CarrierGroup").jstree("get_checked", null, true).each(function (item) { alert($(this).attr("id")); });
请告诉我是否可能在不展开/打开父节点的情况下获取所选父节点的子节点。
谢谢
2个回答

2
看起来你使用了错误的方法。 .get_checked(context, get_all) 是复选框插件的一部分。你需要使用 ._get_children(node)jstree1核心文档 此外,如果你使用了延迟加载并且一个节点没有被加载,你将无法以这种方式获取其子节点,因为它们还不存在。这可能是你在扩展节点之前和之后看到差异的原因。有各种解决方案:
你可以在获取子节点之前手动加载节点。
或者,如果你只是想要子节点列表而不真正需要在jstree中可视化它,你可以使用另一个ajax调用来独立获取此信息。

0
$('#tree').find('.jstree-node')

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接