根据类型更改jstree节点文本颜色

use*_*918 3 javascript jquery jstree

我一直在搜索互联网一个年龄,但无法找到答案.我试图根据特定节点的类型更改节点文本颜色.因此,在此示例中,我想要更改数据中定义的"角色"类型的每个节点的文本颜色.

    $("#roleTree").jstree({
        json_data: {
            data: roleTreeData
        },
        "themes": {
            "theme": "default",
            "dots": true,
            "icons": false
        },
        "ui": {
            "select_limit": 1,
            "select_multiple_modifier": "none"
        },
        "types": {
            "types": {
                "AM": {
                    "hover_node": false,
                    "select_node": false
                },
                "AF": {
                    "hover_node": false,
                    "select_node": false
                },
                "Role": {
// i dont know if possible to be done here? add class?
             //   this.css("color", "red")
                    //{ font-weight:bold}
                }
            }
        },

        plugins: ["themes", "json_data", "ui", "Select", "types", "crrm"]

    }).bind("loaded.jstree", function (event, data)
    {
        $("#roleTree").jstree("open_all");
         data.inst.select_node('ul > li:first');

    }).bind("select_node.jstree", function (event, data)
    {
        selectedRoleId = data.rslt.obj.attr("id");
        window.selectedRole = GetRole(selectedRoleId);              
    });
}
Run Code Online (Sandbox Code Playgroud)

或者任何其他方法来突出显示或告诉用户只有角色是可选择的.

Boj*_* Li 7

假设您使用的是默认的经典主题,则可以使用以下CSS完成此操作.

.jstree-classic li[rel="Role"] > a { color:red; }
Run Code Online (Sandbox Code Playgroud)

获取具有属性的jstree-classic类,获取该类的第一个子项并将颜色指定为红色. lirelRoleali