ztree右击弹出菜单增删改操作

本文介绍了如何在ZTree中实现右键点击树节点时弹出包含编辑和删除选项的提示框。首先在setting配置中设置右击事件onRightClick,接着编写onRightClick函数并阻止默认右击事件。对于父节点,如果其属性为1,则不执行后续操作。通过event.clientX和event.clientY获取鼠标坐标以定位提示框,最后展示相关jsp和js代码实现提示框的处理逻辑。
摘要由CSDN通过智能技术生成

需求,右击树节点,出现编辑和删除的提示框

 

图片.png

1:在setting 配置里面,给callback设置,右击事件onRightClick:

 

图片.png

2:写一个函数onRightClick

 function onRightClick(event, treeId, treeNode) {
    
    }

3:禁用默认鼠标右击事件

document.oncontextmenu = function(){
             return false;
             }

4:父节点不需要点击事件,父节点为1,如果节点为1 的时候,不执行下一步

if (treeNode.id == "1") {
            return;
        }

以上步骤,组成右击事件以下代码:

    //右击事件
    
     function onRightClick(event, treeId, treeNode) {
         document.oncontextmenu = function(){
             return false;
             }
         //alert(1)
         if (treeNode.id == "1") {
            return;
        }
            if (treeNode) {
                zTreeObj.selectNode(treeNode);
                showContextMenu(treeNode.organId,treeNode.leaf);
                /*showContextMenu(treeNode.organId,treeNode.leaf, event.clientX -10, event.clientY -10);*/
            }
        }

众所周知,在PC端,我们通常用event.clienX或者event.clientY来获取手指的坐标,注释部分的代码控制提示框的位置。

5:触发事件之后,出现提示框

jsp代码:

            
<div class="dropdown open" id="treeContextMenu" style="display: none;position: absolute">
    <ul class="dropdown-menu">
 
        <li><a href="javascript:;" id="toUpdateBtn">编辑</a></li>
        <li><a href="#" id="deleteBtn" data-target="#confirmDialog" data-toggle="modal">删除</a></li>
    </ul>
</div>

js代码

 function showContextMenu(type,leaf, x, y) {
            if (type == -1) {
                $(".dropdown-menu").find("li:not(:first)").hide();
            } else if(leaf){
                $(".dropdown-menu").find("li:first").hide();
           
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值