ztree實現拖拽功能
1.屬性配置 leaf: true, 表示葉子節點不能變成根節點。parent: true 表示 根節點不能變成葉子節點
edit: {
drag:{
isCopy: false,
isMove: true
},
removeTitle: "刪除知識點",
renameTitle: "修改知識點名稱",
enable: true//設定 zTree 是否處於編輯狀態
},
data: {
keep: {
leaf: true,
parent: true
},
simpleData: {
enable: true
},
key:{
title:"code"
}
2.回撥函式
callback: {
beforeDrag: zTreeBeforeDrag,
beforeDrop: zTreeBeforeDrop,
}
3.
/**移動知識節點前處理*/
function zTreeBeforeDrag(treeId, treeNodes) {
for (var i=0,l=treeNodes.length; i<l; i++) {
var pid = treeNodes[i].pId;
/* if(pid=="root"||pid==null||pid=="null"){
alert("只能移動葉子節點。");
return false;
}
*/ }
return true;
}
/**拖拽釋放之後結束前執行 */ moveType值型別請參考api
function zTreeBeforeDrop(treeId, treeNodes, targetNode, moveType) {
var oldPid=treeNodes[0].pId;
var targetPid=targetNode.pId;
if(oldPid!=targetPid){
alert("只能在同一知識點下面移動位置");
return false;
}
if(oldPid=="root"||targetPid=="root"){
alert("只能移動子知識的節點。");
return false;
}
}