我正在使用jstree
<div class="demo jstree jstree-0 jstree-default jstree-focused" id="jstree1">
<ul>
<li id="4331" class="jstree-closed jstree-last jstree-unchecked">
<ins class="jstree-icon"> </ins>
<a href="#" class="">
<ins class="jstree-checkbox" style="display: none;"> </ins>
<ins class="jstree-icon"> </ins>
T-Shirt
</a>
</li>
</ul>
树就像
T恤(根)
-Solid tees(Child)
-Graphic tees(Child)
-polo tees(儿童)
现在我要删除root中的复选框表示T-shirt
我可以使用此代码删除复选框
(function(){
j("#jstree1 li ").filter("#4331").each(function() {j("a ins", this).first().hide();});
setTimeout(arguments.callee, 6);
})();
但主要问题是我使用4331
当我向这个树添加新类别时,所有树的ID都会被更改
所以它不起作用
我想使用名称T-Shirt
来执行此代码,所以当我添加新类别时,它不会给我带来问题
答案 0 :(得分:0)
您是否尝试过使用css隐藏“可折叠”商品的复选框?
.jstree-closed a .jstree-checkbox,
.jstree-opened a .jstree-checkbox
{ display: none; }
答案 1 :(得分:0)
为什么不使用类来隐藏复选框?
"attr":{"rel":"directory"}
(请参阅下面的示例)添加到您不希望复选框可见的节点。 [rel=directory] .jstree-checkbox { display:none }
隐藏复选框查看我隐藏目录的jsfiddle。 http://jsfiddle.net/radek/4fTDq/68/