所以我有一个用 JsTree 创建的复选框树。我想要做的是最初将所有复选框设置为禁用,然后我有一个包含 li 标签 ID 的数组。通过浏览表格,我应该启用属于具有特定 ID 的标签的复选框。选中时,树应遵循与默认顺序相同的顺序(当父选中时,启用的子也应选中......等等)。我该如何进行?提前致谢。PS:JsTree 插件很棒。但是它缺乏很多文档。
问问题
6620 次
1 回答
4
您应该覆盖check_node
和uncheck_node
函数的默认行为,并创建自己的禁用节点类型。
编码:
$('#tree').jstree({
'plugins' : ['themes', 'html_data', 'checkbox', 'types'],
'checkbox' : {
'two_state' : true // Nessesary to disable default checking childrens
},
"types" : {
"types": {
"disabled" : { // Defining new type 'disabled'
"check_node" : false,
"uncheck_node" : false
},
"default" : { // Override default functionality
"check_node" : function (node) {
$(node).children('ul').children('li').children('a').children('.jstree-checkbox').click();
return true;
},
"uncheck_node" : function (node) {
$(node).children('ul').children('li').children('a').children('.jstree-checkbox').click();
return true;
}
}
}
}
});
现在要禁用节点,请将属性添加rel="disabled"
到其li
标签。
于 2013-05-23T14:30:24.190 回答