我正在使用Jstree插件,我希望获得所选节点的所有子节点而不扩展它。 我用Google搜索了一下,并且知道可以使用下面的代码完成。
checked = $(“#tree”)。jstree(“get_checked”,null,true);
但它不适合我,我需要先扩展/打开节点才能得到它的孩子。
以下是我正在使用的示例代码
$(“#treeview-CarrierGroup”)。jstree(“get_checked”,null,true).each(function(item){ 警报($(本).attr( “ID”)); });
如果可以获取所选父节点的子节点而不扩展/打开它,请告诉我。
感谢
答案 0 :(得分:2)
看起来你正在使用错误的方法开始。 .get_checked ( context, get_all )
是复选框插件的一部分。你想要._get_children ( node )
。 Docs for core of jstree1
此外,如果您正在使用延迟加载并且未加载节点,则您将无法以这种方式获取其子节点,因为它们根本就不存在。这可能是您在扩展节点之前和之后看到差异的原因。有各种解决方案:
您可以在获取其子节点之前手动加载节点。
或者如果你只是在孩子列表之后并且不需要在jstree中可视化它,你可以使用另一个ajax调用来获取与jstree无关的信息。
答案 1 :(得分:0)
$('#tree').find('.jstree-node')