一:右键菜单:
layui里面没有给到右键菜单,所以,我自己把源码改了一下:
找到layui文件夹里modules下的tree.js
用以上代码,替换以下代码
当i.which等于3,是右键事件,等于1是左键。
所以,左键响应的事件,还是可以在tree的属性设置的时候的click属性里写自己的左键事件,如
tree.render({
elem: '#test1'
,click: function(obj){
console.log(obj.data); //得到当前点击的节点数据
console.log(obj.state); //得到当前节点的展开状态:open、close、normal
console.log(obj.elem); //得到当前节点元素
console.log(obj.data.children); //当前节点下是否有子节点
}
});
右键就在上面选中代码里if分支,i.swich=3的地方搞事情,菜单的话,就是自己写个菜单,然后根据鼠标点击位置显示和隐藏就好了。
二、父节点选中子节点全被选中
一个树形组件,比如到权限管理的时候,回显的时候,父节点被设置为选中,所有改节点的子节点都被设置为选中,但我们需要的可能是这样的回显: