ドラッグアンドドロップでjstreeを設定しました。今のところ、ノードを事前定義されたdivにドラッグすることができます。しかし、ツリー内のノードは削除されました。ノードをドラッグして、ノードをツリーに残しておくにはどうすればよいですか?
dndプラグインを備えたJsTree、常にコピーが機能していません。別の木ではなくdivにドロップするからだと思います。
編集:追加されたコード
$(function () {
$("#tree").jstree({
"crrm" : {
"move" : {
"check_move" : function (m) { //do not allow messing up the tree!
return false;
},
"always_copy" : "true"
}
},
"json_data" : {
"progressive_render" : true,
"ajax" : {
"url" : "lookupInstruments.php",
"data": function(n) {
// the result is fed to the AJAX request 'data' option
return {"id": n.attr ? n.attr("id") : "root_null_null_-1"};
}
}
},
"dnd" : {
"drop_finish" : function (data) {
//alert(data.o.attr("ptype"));
drop(data.o);
},
"drop_check" : function (data) {
if(data.o.attr("dragable") == "0") {
return false;
} else {
return true;
};
},
},
"plugins" : [ "themes", "json_data", "crrm", "dnd" ]
});
});
編集2:解決しました、これが他の誰かに役立つことを願っています:
問題は解決しました。drop関数でdropオブジェクトのクローンを作成する必要がありました。
function drop(dObj) {
var dropObj = dObj.clone();
...
}