いろいろ調べてみましたが、正解がわかりませんでした。
必要に応じて jsTree を生成する方法を知りたいのですが、データベースに含まれるデータからノードをロードする必要があります。データは関数によって返されます。
私の目的は、ユーザーがノードをクリックすると、スクリプトがデータベース クエリに基づいてそのノードの子のみを生成することです。
そのために、ここで見つけた多くのスクリプトを試しましたが、やりたいことと最も似ているのは次のスクリプトです。
$("#tree-cat1").jstree({
"plugins": ["themes", "json_data", "ui"],
"themes": {"theme": "classic","dots": true,"icons": true},
"json_data": {
//root elements
"data": [{"data":'A node',"state":'closed',"attr":{"id":'A'}}],
"ajax": {
"type": 'POST',
"data": {"action": 'getChildren'},
"url": function (node) {
var nodeId = node.attr('id'); //id="A"
return 'yuorPathTo/GetChildrenScript/' + nodeId;
},
"success": function (new_data) {
//where new_data = node children
//e.g.: [{'data':'A1 node','attr':{'id':'A1'}}, {'data':'A2 node','attr':{'id':'A2'}}]
return new_data;
}
}
}
});
それはもともとアイリッシュカから書かれました。
問題は、私がそれを機能させることができなかったことです。主な問題は、「return yuorPathTo/GetChildrenScript/」を呼び出したときに返されるデータと、そのデータの例を誰かが提供できるかどうかを知ることです。
どんな助けでも感謝します。