微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jquery上下文菜单禁用菜单项

对于我的asp.net mvc 3应用程序,我正在使用 this plugin.但是我有一个问题,我想在创建菜单后启用或禁用某些菜单项,如:
<script type="text/javascript">
    $(function(){
        /**************************************************
         * Menu 1
         **************************************************/
        $.contextMenu({selector: '.context-menu-one',items: {
            edit: {name: "Edit",icon: "edit",callback: $.noop,accesskey:"e d i t"},cut: {name: "Cut",icon: "cut",accesskey:"c u t"},copy: {name: "copy",icon: "copy",accesskey:"c o p y"},paste: {name: "Paste",icon: "paste",accesskey:"p a s t e"},"delete": {name: "Delete",icon: "delete",accesskey:"d e l t"},sep1: "---------",quit: {name: "Quit",icon: "quit",accesskey:"q u i t"}
        }});

        //not working
        $('.context-menu-one').contextMenu('commands[0].disabled','true');
      });

  </script>

不工作,任何想法?

解决方法

根据插件documentation,您可以指定要调用函数,以确定是否禁用了菜单项.

因此,您可以让该函数关闭局部变量,并更新该变量以启用或禁用这些项.就像是:

$(function() {
    var itemsdisabled = {};  // Enable everything initially.
    $.contextMenu({
        selector: ".context-menu-one",items: {
            // [...]
            cut: {
                name: "Cut",accesskey: "c u t",disabled: function(key,opt) {
                    return !!itemsdisabled[key];
                }
            }
            // [...]
        }
    });

    // disable the "Cut" menu item.
    itemsdisabled["cut"] = true;
});

原文地址:https://www.jb51.cc/jquery/176328.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐