Jquery plugins 在树之间复制节点时,Jstree总是\u copy不起作用
我真的被一个jstree问题困住了;我有两棵树,一棵是“源”树,一棵是“目标”树。“源”树是一个平面树,其中包含我希望拖到“目标”树上构建的节点。但是,在拖动之后,我需要保留这些节点,以便可以重用它们。现在,如果我在拖动之前和拖动过程中按下control键,它将执行复制功能并离开源节点。但是,我不想让用户这样做;我希望这棵树总是能复制。这就是为什么我使用这个设置,但它在我的树上不起作用。有人能帮忙吗?这是导致此问题的代码,减去数据。 谢谢Jquery plugins 在树之间复制节点时,Jstree总是\u copy不起作用,jquery-plugins,jstree,drag-and-drop,Jquery Plugins,Jstree,Drag And Drop,我真的被一个jstree问题困住了;我有两棵树,一棵是“源”树,一棵是“目标”树。“源”树是一个平面树,其中包含我希望拖到“目标”树上构建的节点。但是,在拖动之后,我需要保留这些节点,以便可以重用它们。现在,如果我在拖动之前和拖动过程中按下control键,它将执行复制功能并离开源节点。但是,我不想让用户这样做;我希望这棵树总是能复制。这就是为什么我使用这个设置,但它在我的树上不起作用。有人能帮忙吗?这是导致此问题的代码,减去数据。 谢谢 $(函数(){ $(“#SourceTree”).js
$(函数(){
$(“#SourceTree”).jstree({
“json_数据”:{
“ajax”:{
“url”:“Home/GetTree”,
“类型”:“职位”,
“contentType”:“application/json;charset=utf-8”,
“数据类型”:“json”,
“数据”:功能(n){
var result=“{'id':'”+(n.attr?n.attr(“id”).replace(“node_”,”):“0”)+“}”;
返回(结果);
}
}
},
“crrm”:{
“移动”:{
“始终复制”:“多树”,
//不允许在此树中移动节点
“检查移动”:功能(){
返回false;
},
}
},
“插件”:[“主题”、“json_数据”、“ui”、“类型”、“crrm”、“dnd”]
})
$(“#DestinationTree”).jstree({
“json_数据”:{
“ajax”:{
“url”:“Home/GetTree”,
“类型”:“职位”,
“contentType”:“application/json;charset=utf-8”,
“数据类型”:“json”,
“数据”:功能(n){
var result=“{'id':'”+(n.attr?n.attr(“id”).replace(“node_”,”):“0”)+“}”;
返回(结果);
}
}
},
“插件”:[“主题”、“json_数据”、“ui”、“类型”、“dnd”、“crrm”]
})
});
好的,我通过大量的尝试和错误找到了答案:
源树必须具有:
1) “dnd”和“crrm”插件与示例类似
2) move.check_move功能必须与上述功能同时存在
3) 我们不需要移动。请始终复制、删除此,此处不需要
目标树必须具有:
1) “dnd”和“crrm”插件与示例类似
2) 需要添加crrm.move.always\u copy:true,此处。
“crrm”:{
“移动”:
{
“总是抄袭”:正确
}
},
<script type="text/javascript">
$(function () {
$("#SourceTree").jstree({
"json_data": {
"ajax": {
"url": "Home/GetTree",
"type": "POST",
"contentType": "application/json; charset=utf-8",
"dataType": "json",
"data": function (n) {
var result = "{'id':'" + (n.attr ? n.attr("id").replace("node_", "") : "0") + "'}";
return (result);
}
}
},
"crrm": {
"move": {
"always_copy": "multitree",
// Do not allow a node move within this tree
"check_move": function () {
return false;
},
}
},
"plugins": ["themes", "json_data", "ui", "types", "crrm", "dnd"]
})
$("#DestinationTree").jstree({
"json_data": {
"ajax": {
"url": "Home/GetTree",
"type": "POST",
"contentType": "application/json; charset=utf-8",
"dataType": "json",
"data": function (n) {
var result = "{'id':'" + (n.attr ? n.attr("id").replace("node_", "") : "0") + "'}";
return (result);
}
}
},
"plugins": ["themes", "json_data", "ui", "types", "dnd", "crrm"]
})
});
</script>