我正在使用jstree javascript插件,我正在异步加载数据。我正在尝试对此树的数据进行搜索。我有一个Web服务,它根据搜索参数返回一组id。搜索前未加载树。当用户点击搜索时,根据返回的ID,我试图逐个加载/打开树中的节点。
for(var i = 0; i < ids.length; i++){
$("#tree").jstree("open_node", document.getElementById(ids[i]));
}
但是,只加载了根节点。任何人都可以建议一个简单的函数,使用一组id来逐个加载节点吗?
提前致谢。
答案 0 :(得分:0)
如果未加载jsTree,则可以使用“state”=&gt;在为jsTree构建数据时,为要加载时打开的节点“打开”。请参阅以下示例 - 从http://www.jstree.com/documentation/json_data
复制的代码{
"data" : "node_title",
// omit `attr` if not needed; the `attr` object gets passed to the jQuery `attr` function
"attr" : { "id" : "node_identificator", "some-other-attribute" : "attribute_value" },
// `state` and `children` are only used for NON-leaf nodes
"state" : "closed", // or "open", defaults to "closed"
"children" : [ /* an array of child nodes objects */ ]
}