我正在使用带有ajax的jstree,我看到我的所有节点都有箭头来扩展它,甚至那些没有子节点的节点。在jstree http://www.jstree.com/demo的演示页面上,情况并非如此。我没有在演示代码上看到与我不同的东西,它是否来自服务器?我有一个参数来响应“getChildren”方法在jstree上说“这个,没有孩子,不能启用它”吗?
任何人都知道它来自哪里?我该怎么做才能解决这个问题?
因为当我使用contextmenu插件的复制/粘贴功能时似乎是个问题。当我粘贴一个没有子节点但尚未打开的节点(新父节点)时(因此没有加载子节点),除了获取子节点的请求(如果我点击打开节点)没有任何明显的返回。并且它不执行move_node函数。
编辑:我对contextmenu中的“添加”存在同样的问题 有人可以帮帮我吗?由于
答案 0 :(得分:9)
来自jsTree文档:
http://www.jstree.com/documentation/html_data
将根据节点结构应用三个类中的一个:
<li class="[ jstree-open | jstree-closed | jstree-leaf ]">
Jonathan Stowell是对的,但是将attr.class设置为&#34; jstree-leaf&#34;不会工作(至少不是最新版本)。
但是&#34;打开&#34;并且&#34;关闭&#34;让我想起了node.state,所以我试过了,结果发现当你设置node。 state to&#34; leaf&#34;在您的JSON序列化类中,它将是不可扩展的。
答案 1 :(得分:4)
我将jstree-leaf
类添加到attr
属性中,用于没有子节点的节点。
attr: { "class" : "jstree-leaf" }
然后设置您不需要扩展功能的CSS类。
答案 2 :(得分:2)
我遇到了与“创建”方法和没有子节点的节点相同的问题。解决了它将这些节点的状态指定为“打开”而不是默认的“关闭”。
希望这会有所帮助。
答案 3 :(得分:1)
如果发送json数据,请将“jstree-leaf”作为li_attr的类
li_attr: {class = "jstree-leaf" }