3

jsTree ノードのクリック イベントをトリガーしたいと考えています。私が以下に書いたコードはそれを行います。私の問題は、イベントがトリガーされた後、ノードが強調表示されないことです。

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

どうやってやるの?前もって感謝します

4

1 に答える 1

1

jstree 関数を使用できますselectNode。それを使用すると、バインドされた関数がトリガーされselect_node.jstreeます。

コード:

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

2 番目のパラメーターとして使用される 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/

于 2013-09-09T09:17:34.637 に答える