我在我的网络应用中使用了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"]
});
当我在没有延迟加载的情况下在第一个树中加载一些数据时,拖动按钮正在按预期工作。 当我使用延迟加载在第一个树中加载数据时,拖动操作不再起作用。
非常感谢任何帮助。
答案 0 :(得分:0)
试试这个......
$(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"]
});
});
我认为你需要准备网址