1. 程式人生 > >ztree實現拖拽功能

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;
        }

}