データの保存に使用する jstree オブジェクトがあり、ajax を使用してステップごとに完了します。送信するデータに応じて、HTML でフォーマットされたノードを返す ajax.php ファイルを呼び出します。
私の問題は次のとおりです。受信するデータには現在のノードの構造が既に含まれていることがわかっており、現在のノードを ajax 呼び出しから受信したデータに置き換える代わりに、jstree は構造を現在のノードに私が望んでいるものではない新しい息子。
たとえば、ノード 1 をクリックすると、次のようになります。
0
| - 1
| - 2
次の構造を取得します。
0
| - 1
| | - 1
| | | - 1.1
| | | - 1.2
| - 2
ajax 呼び出しの戻り値を変更することはできませんが、現在のノードの子ノードとしてノードを挿入する代わりに、次のコードを使用してノードを戻りデータに置き換えることができると考えました。
$node.jstree({
"plugins" : [ "themes", "html_data" ],
"html_data" : {
ajax: {
url: "ajax.php",
data: function(node){
return {
index: (node != -1) ? node.attr("id") : 0
};
},
type: "POST"
}
},
animated: 'fast'
});
回答ありがとうございます:)