Pet*_*ter 3 javascript jquery fancytree
我在我的网站上有一个奇特的树解决方案,我希望有一个触发特定节点的按钮.
我可以通过点击按钮激活特定节点或在加载花式树后触发它吗?
我的花哨代码:
$("#tree").fancytree({ //Fancy Tree
checkbox: false,
selectMode: 3,
extensions: ["dnd"],
source: {
url: "@(Url.Action("GetCategoryForFancyTree", "LinksDocuments"))" + '?time=' + timestamp,
success: function(data){
console.log(data);
},
cache: true
}
});
Run Code Online (Sandbox Code Playgroud)
我看到这个代码可能我可以使用,但我不知道节点的节点密钥,我怎么能检索密钥?
$("#tree").fancytree("getTree").getNodeByKey("id4.3.2").setActive();
Run Code Online (Sandbox Code Playgroud)
小智 6
.getNodeByKey只是期望节点元素的"id".例如,要从以下示例中获取"示例节点",只需为每个元素设置id:
<div id="tree">
<ul>
<li id="123">Sample Node</li>
</ul>
</div>
Run Code Online (Sandbox Code Playgroud)
并使用这样的东西来激活它:
$("#tree").fancytree("getTree").getNodeByKey("123").setActive();
Run Code Online (Sandbox Code Playgroud)
我建议将其添加到"init:function(){}",否则如果树仍在加载/构建,它可能不会激活.
也可以在"init:"中使用以下内容,也应该这样做.
data.tree.activateKey("123")
Run Code Online (Sandbox Code Playgroud)
最后,如果您还不知道,请获取密钥:
click: function (event, data) {
var node = data.node;
alert("ID: " + node.key);
}
Run Code Online (Sandbox Code Playgroud)