这里我记录一下我自己的解决方案:
1、首先在Ztree的setting设置中加一个鼠标右键回调函数onRightClick,然后在加一个beforeRightClick(具体含义可以看官方API)
var setting = {
data : {
simpleData : {
enable : true
},
key : {
name : "name",
title : "name",
},
},
callback : {
beforeRightClick: zTreeBeforeRightClick,//在鼠标右键事件前执行的方法,如果该方法返回false,则不执行右键回调函数zTreeOnRightClick,如果返回为true,则执行右键回调函数zTreeOnRightClick
onRightClick : zTreeOnRightClick //点击鼠标右键执行的方法
},
}; /**
* 鼠标右键执行前调用该方法
* @param treeId
* @param treeNode
* @returns
*/
function zTreeBeforeRightClick(treeId, treeNode) {
return treeNode.edit; //这里只需要设置不需要显示右键菜单的子节点的edit属性为false就行(如果是异步加载的数据,则需要在tree的实体中加上edit字段(默认为true),然后在遍历的时候注意不需要显示右键菜单的数据,将edit属性设为false就行。)
}