37種類のノードタイプがあります。ドラッグアンドドロップを実装しようとしています。これは機能しますが、ドラッグできるタイプとドロップできる場所を正確に制限する必要があります。残念ながら、ドキュメント(http://www.jstree.com/documentation)で有用な情報を見つけることができません。
これまでに3つの方法を試しました。
最初:ノードタイプに応じてdrag_checkコールバックでtrueまたはfalseの戻り値を定義します。
$("#demo1").jstree({
"dnd" : {
"drag_check" : function () {
2番目:prepare_move.jstreeイベントにバインドし、ノードタイプに応じてtrueまたはfalseの値を返します。
.bind("prepare_move.jstree", function (e, data) {
if (data.rslt.o.attr("typ") === "tpop") {
3番目:typesプラグインを使用し、そこで有効な子を定義します。
$("#tree").jstree( {
"types": {
"type_attr": "typ",
"valid_children": ["ap_ordner_pop", "ap_ordner_apziel", "ap_ordner_erfkrit", "ap_ordner_apber", "ap_ordner_ber", "ap_ordner_beob", "iballg", "ap_ordner_ibb", "ap_ordner_ibartenassoz"],
"types": {
"ap_ordner_pop": {
"valid_children": "pop"
},
"pop": {
"valid_children": ["pop_ordner_tpop", "pop_ordner_popber", "pop_ordner_massnber"],
"new_node": "neue Population"
},
"pop_ordner_tpop": {
"valid_children": "tpop"
}
しかし、ほとんどのノードをほぼどこにでもドロップできます。これはどのように行う必要がありますか?それとも良い例を教えていただけますか?
ヘルプは大歓迎です。