Javascript jsTree选择尚未在DOM中的节点
我有一个jsTree,数据来自HTMLJavascript jsTree选择尚未在DOM中的节点,javascript,jquery,jstree,Javascript,Jquery,Jstree,我有一个jsTree,数据来自HTML $("#tree_container").jstree(); 现在我想在树元素上实现深度链接。我从URL参数获取类和数据id,现在我想选择对应的节点 var id=$("#tree_container").find("li."+get_class+"[data-id='"+get_id+"']").attr("id"); if(id!=undefined && id!=0) { treeElem.jstre
$("#tree_container").jstree();
现在我想在树元素上实现深度链接。我从URL参数获取类和数据id,现在我想选择对应的节点
var id=$("#tree_container").find("li."+get_class+"[data-id='"+get_id+"']").attr("id");
if(id!=undefined && id!=0) {
treeElem.jstree(true).select_node(id);
}
仅当节点已在DOM树中时,此操作才有效。
如果单击父节点,将插入子树
如果我想要的节点不在树中。。。id未定义,选择失败
问题是,如果我直接在中输入像j1_6这样的id,即使节点不在DOM树中,也会找到它。它只适用于该格式的Id,我尝试在元素$.class[data Id='1']中放置其他选择器,但没有任何效果
我的问题是,如果节点还不在DOM树中,我不知道如何获取该节点的id。我没有找到一个api函数或任何可以这样做的东西
======更新======
我找到了一个解决办法。。。
在构建HTML树时,我现在结合类和数据id来组成元素li的HTML id。
因此,我可以控制ID并了解它们,只需执行以下操作:
jstreetrue.选择节点+获取类型+获取id
所以,是的,正如我所说,这只是一个解决办法…你能展示一下将分支插入到单击的父节点的代码吗?我没有单击任何东西。我从URL中获取参数get_class,get_id,然后我想在树中选择相应的节点。如果你有li的data id属性,为什么不把它改为id并使用它来获取节点,而不是从class和data id中构造一个id?这是我最后看到的更新,但我有两种类型的元素class。