如何突出显示jsTree节点?

时间:2013-09-09 08:54:26

标签: jquery css class jstree

我想触发jsTree节点的click事件。我写的代码就是这样做的。我的问题是,在触发事件后,节点不会突出显示。

$("#myTreeId li[id=" + myLiId + "] a").click();
$("#myTreeId li[id=" + myLiId + "] a").addClass('jstree-clicked');

我该怎么做? 提前致谢

1 个答案:

答案 0 :(得分:1)

你可以使用jstree函数selectNode;使用它会触发函数select_node.jstree绑定。

代码:

$("#tree").jstree("select_node", "#30"); 

用作第二个参数的id是用于填充树的每个节点的id属性;显然,用于填充树的数据必须包含id属性。

代码示例:

$("#tree").jstree({
    "json_data": {
        "data": [{
            "data": "pe_opensourcescanning",
                "attr": {
                "id": 77,
                    "pId": -1
            },
                "children": [{
                "data": "tags",
                    "attr": {
                    "id": 30,
                        "pid": 0
                }
            }, {
                "data": {
                    "title": "branches"
                },
                    "attr": {
                    "id": 29,
                        "pid": 0
                }
            }]
        }]
    },
        "plugins": ["themes", "json_data", "ui"]
})

$("#tree").bind(
    "select_node.jstree", function (evt, data) {
    console.log('select!');
});

$("#selectNode").click(function () {
    $("#tree").jstree("select_node", "#30");
});

演示:http://jsfiddle.net/IrvinDominin/UE9Ed/