如何禁用所选节点的默认操作?
当用户选择节点时,该节点不应该是可点击的,直到选择了另一个节点。
这是一个非常常见的功能,但我似乎无法使其发挥作用。
此致
迪米瑞斯
答案 0 :(得分:5)
我通过处理select_node.jstree事件并使用types插件解决了这个问题。
var treeConfig = {
plugins: ["ui", "types"],
types: {
valid_children: ["selected"],
types: {
"selected": {
"select_node": false
}
}
}
}
var tree = $("#navtree");
tree.jstree(treeConfig)
.bind("select_node.jstree", function (e, data){
tree.find('[rel="selected"]').removeAttr('rel');
data.rslt.obj.attr("rel", 'selected');
});
基本上,在select_node上,我删除树中的任何rel = selected属性,然后将rel = selected属性应用于所选节点。在类型中,我禁用了“selected”类型的select_node函数。