首先配置zTree的相关属性
var setting = {
callback: {
beforeDrop: beforeDrog//用于捕获节点拖拽操作结束之前的事件回调函数,并且根据返回值确定是否允许此拖拽操作
}
,
edit: { //此属性添加后,树才可以被拖拽
enable: true,
showRemoveBtn: false,
showRenameBtn: false,
drag: {
prev: true,
next: true,
inner: false //拖拽到目标节点时,设置是不允许成为目标节点的子节点
}
}
}
// 拖拽排序 只允许同级排序
//用于捕获节点拖拽操作结束之前的事件回调函数,并且根据返回值确定是否允许此拖拽操作
function beforeDrog(treeId, treeNodes, targetNode, moveType) {
for(var i =treeNodes.length-1; i >1; i--){
if(treeNodes[i].parentTId != treeNodes[i-1].parentTId){
//todo alert
return false
}
}
if(treeNodes[0].parentTId == targetNode.parentTId){
return true;
}
return false;
}
小结:zTree官网给出的API和DEMO还是非常实用的,需要的话随时查阅即可