如何删除没有子节点的根节点的三角形图标(用于扩展/折叠)?

时间:2013-09-20 09:23:07

标签: javascript jquery jstree

我在使用jstree的ui时会遇到一些困难,它会在点击节点时动态添加/删除节点。它会在第一次单击时添加子节点,并在第二次单击同一节点时删除单击节点。我目前正在将jstree绑定到selected_node事件,如下所示:

$(function () {
    $("#tree").jstree({ 
        "json_data" : {
            "data" : [
                { 
                    data : "/", 
                    attr : { "id" : "root"},
                    state : "closed",
                },
            ]
        },
        "plugins" : [ "themes", "json_data", "crrm", "ui" ]
    }).bind("select_node.jstree", function(event, data) { 
        // . . . 
    }

最初是一个带有文件夹图标的节点,左侧有一个小三角形(用于扩展),文件夹图标右侧有数据值。由于最初没有树的节点,我不想要扩展特征,即左侧的小三角形。任何人都可以帮忙吗?对于第二次单击的子节点(删除子节点的子节点),三角形消失。我无法理解随机显示三角形的扩展/崩溃背后的逻辑。

2 个答案:

答案 0 :(得分:0)

您可以尝试将根节点状态设置为:

state: "leaf"

这样节点就不应该显示扩展三角形。

答案 1 :(得分:0)

一种解决方法是在 css 中隐藏图标:

#tree i {
  display: none;
}