使用带有复选框插件的jsTree(3.1.0 +)是否可以允许不是所有复选框都要检查 - 禁用其中一些复选框?
我在jsree禁用复选框找到旧版jsTree的解决方案,但它在jsTree 3.1.0+版本上不起作用.
隐藏复选框的解决方案jsTree隐藏复选框工作正常,但如果我点击该文件夹,则无论如何都会检查隐藏复选框.
谢谢.
vak*_*ata 12
请记住,除非您使用checkbox.tie_selectionas false,选择和检查是一回事.
因此,您只需调用.disable_node()要禁用的节点即可.
编辑:使用repo中的最新代码(注意 - 不是3.1.1,但最新的代码):https: //github.com/vakata/jstree/archive/master.zip
您现在可以指定checkbox_disabled状态:
<div id="jstree">
<ul>
<li data-jstree='{"checked":true}'>checked</li>
<li data-jstree='{"checkbox_disabled":true}'>checked</li>
</ul>
</div>
Run Code Online (Sandbox Code Playgroud)
当然也在JSON中:
{ "id" : "Test node", "state" : { "checkbox_disabled" : true } }
Run Code Online (Sandbox Code Playgroud)
您还可以使用enable_checkbox(node)和在运行时更改复选框的禁用状态disable_checkbox(node).
要从特定节点完全隐藏复选框,请添加以下JS代码
$('#tree_2').on('ready.jstree', function () {
$("#tree_2").jstree().get_node("node1_id").a_attr["class"] = "no_checkbox";
$("#tree_2").jstree().get_node("node2_id").a_attr["class"] = "no_checkbox";
....
});Run Code Online (Sandbox Code Playgroud)
然后在CSS中添加以下样式
.no_checkbox > i.jstree-checkbox {
display: none;
}Run Code Online (Sandbox Code Playgroud)
它将完全隐藏提供的节点ID中的复选框,这对我来说就像是一种魅力。感谢这个链接。
| 归档时间: |
|
| 查看次数: |
10456 次 |
| 最近记录: |