nui UI 具有右键属性的菜单树

参考示例:树右键菜单
     

          
一:创建ContextMenu    
<ul id="treeMenu" class="nui-contextmenu"  onbeforeopen="onBeforeOpen">       
    <li iconCls="icon-move" οnclick="onMoveNode">移动节点</li>
    <li class="separator"></li>
    <li>
        <span iconCls="icon-add">新增节点</span>
        <ul>
            <li οnclick="onAddBefore">插入节点前</li>               
            <li οnclick="onAddAfter">插入节点后</li>   
            <li οnclick="onAddNode">插入子节点</li>                
        </ul>
    </li>
    <li name="edit" iconCls="icon-edit" οnclick="onEditNode">编辑节点</li>
    <li name="remove" iconCls="icon-remove" οnclick="onRemoveNode">删除节点</li>       
</ul>
          
二:设置contextmenu  
<ul id="tree1" class="nui-tree" url="../data/tree.txt" style="width:200px;padding:5px;"
    showTreeIcon="true" textField="text" idField="id"
    contextMenu="#treeMenu">       
</ul>
         
三:监听beforeopen事件  
function onBeforeOpen(e) {
    var menu = e.sender;
    var tree = nui.get("tree1");
    var node = tree.getSelectedNode();
    if (!node) {
        e.cancel = true;
    }
    if (node && node.text == "Base") {
        e.cancel = true;
        //阻止浏览器默认右键菜单
        e.htmlEvent.preventDefault();
        return;
    }
    
    var editItem = nui.getbyName("edit", menu);
    var removeItem = nui.getbyName("remove", menu);
    editItem.show();
    removeItem.enable();
    if (node.id == "forms") {
        editItem.hide();
    }
    if (node.id == "lists") {
        removeItem.disable();
    }
}

转载于:https://www.cnblogs.com/godlovelian/p/5568962.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值