(JQuery)如何给JsTree生成的树的每个节点添加上自定义的右键菜单

(JQuery)如何给JsTree生成的树的每个节点添加上自定义的右键菜单,第1张

一个带有右键 *** 作的树形菜单

$(document)ready(function(){
    $ajaxSetup({cache:false});
    $("#browser")tree({
    data  : {
        type  : "json",
        url   : src,
        async : true,
        async_data : function (NODE) {
                                        return { parent_Id : $(NODE)attr("id") || 0}
                                     }
      },
      lang:{
           loading:"目录加载中……"
            },
      rules:
      {
      draggable   : "all"   //这个设置可以使得节点进行拖动 *** 作
      },
      ui:{
           context     : [ //自定义右键 *** 作的可 *** 作内容
            {
                id      : "create",
                label   : "添加下级目录", //右键d出菜单的此项 *** 作屏显字样
                visible : function (NODE, TREE_OBJ) { if(NODElength != 1) return false; return TREE_OBJcheck("creatable", NODE); }, //允许节点被右击时出现 *** 作菜单
                icon    : "<%=requestgetContextPath() %>/css/themes/default/createpng",//右键d出菜单的此项 *** 作图标
                action  : function (NODE, TREE_OBJ) {
                                                //进行此项 *** 作,将有这个函数事件被响应
                                                     }
            },
            "separator"//这个是在两个 *** 作之间画一条分隔线
           ,
            {
                id      : "edit",
                label   : "编辑目录信息",
                visible : function (NODE, TREE_OBJ) { if(NODElength != 1) return false; return TREE_OBJcheck("creatable", NODE); },
                icon    : "<%=requestgetContextPath() %>/image/reg2gif",
                action  : function (NODE, TREE_OBJ) {
                                                    openWindow('myurl','','',function(){treeRefresh($(NODE)attr("id"));});
                                                    }
            },
            "separator"
            ,
            {
                id      : "privilege",
                label   : "设置目录权限",
                visible : function (NODE, TREE_OBJ) { if(NODElength != 1) return false; return TREE_OBJcheck("creatable", NODE); },
                icon    : "<%=requestgetContextPath() %>/css/themes/default/renamepng",
                action  : function (NODE, TREE_OBJ) {
                                                    openWindow('myurl','','',function(){treeRefresh($(NODE)attr("id"));});
                                                    }
            },
            "separator",
            {
                id      : "delete",
                label   : "删除",
                visible : function (NODE, TREE_OBJ) { if(NODElength != 1) return false; return TREE_OBJcheck("creatable", NODE); },
                icon    : "<%=requestgetContextPath() %>/css/themes/default/removepng",
                action  : function (NODE, TREE_OBJ) {
                                                    var tree=$tree_reference("browser");
                                                    openWindow('myurl','','',function(){
                                               //下边的parent()和refresh()均为v098版本提供,如果你使用的是其他版本如v096等,这些将不被支持。
                                                    NODE=$(treeparent(NODE));
                                                    if($(NODE)attr("id")==undefined){
                                                        treerefresh();
                                                    }else{
                                                        TreeRefresh();
                                                    }
                                                    });
                                                    }
            },
            "separator",
            {
                id      : "others",
                label   : "其他 *** 作",
                visible : function (NODE, TREE_OBJ) { if(NODElength != 1) return false; return TREE_OBJcheck("creatable", NODE); },
                icon    : "<%=requestgetContextPath() %>/css/images/cutpng",
                action  : function (NODE, TREE_OBJ) {
                                                    alert("暂无可提供 *** 作。");
                                                    }
            }
            ]
      },
   callback : {
         onselect: function(node) {
            //(a);
           
        }
    }
 
});
function treeRefresh(nodeid){
                     var rid=nodeid;
                    var tree=$tree_reference("browser");
                    var par_node=treeparent($("#"+rid));
                    treerefresh(par_node);
}
});

以上就是关于(JQuery)如何给JsTree生成的树的每个节点添加上自定义的右键菜单全部的内容,包括:(JQuery)如何给JsTree生成的树的每个节点添加上自定义的右键菜单、、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9408587.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-28
下一篇2023-04-28

发表评论

登录后才能评论

评论列表(0条)

    保存