jsTree: при ленивой загрузке плагин "dnd" не работает
Я использую jsTree (последняя версия) в своем веб-приложении. У меня есть много узлов для отображения в дереве, поэтому я использую ленивую загрузку, иначе я бы столкнулся с тайм-аутом. Когда дерево загружено, пользователь может выбрать значения из второго дерева и переместить их в лениво загруженное дерево (плагин jsTree "dnd"). На обоих деревьях установлен плагин jsTree "dnd". Но я не могу перетащить элемент в загруженное дерево с отложенным доступом, когда я пытаюсь сделать так, чтобы у удаляемого узла была иконка с красным крестиком (указание: здесь не разрешено).
Это код для ленивого загруженного дерева:
$('#target_tree').jstree({
'core' : {
'data' : {
"url" : "get_current_hierachy",
"data" : function (node) {
return {'p_parent_id': node.id};
},
"dataType": "json",
"check_callback": true
}
},
"plugins" : ["dnd"]
});
Когда я загружаю некоторые данные в первое дерево без отложенной загрузки, drag'n'drop работает как положено. Когда я загружаю данные в первое дерево с отложенной загрузкой, drag'n'drop больше не работает.
Любая помощь будет принята с благодарностью.
1 ответ
Попробуй это...
$(document).ready(function () {
$('#target_tree').jstree({
'core': {
'data': {
"url": function (node) {
var url;
if (node.id == '#') {
url = "getRootNode";
} else {
var id = $(node).data("id");
url = "getChildNode?nodeid=" + id;
}
return url;
},
"data": function (node) {
return { "id": node.id };
},
"type": "GET",
"dataType": "json",
"contentType": "application/json charset=utf-8",
},
'check_callback': true,
},
"plugins": ["dnd"]
});
});
Я думаю, вам нужно подготовить URL