【问题标题】:Lib.Web.Mvc.JQuery.JqGrid - Enable editing of column ONLY while being added, but not while being "edited"Lib.Web.Mvc.JQuery.JqGrid - 仅在添加列时启用编辑,但在“编辑”时不启用
【发布时间】:2014-09-07 21:18:20
【问题描述】:

我有一列恰好是现有的、设计不佳的架构中特定实体的业务键和主键。允许对该键进行编辑是不切实际的,因为它们不会按原样级联。

所以我需要使列仅在创建时可编辑,但在编辑时不可编辑。我在 jqGridLib.Web.Mvc.JQuery.JqGrid 的文档中找不到任何表明这是内置功能的信息,但如果是,我很想知道。

如果不是,我继续实现此功能的最佳方式是什么?我应该使列可编辑但添加自定义(客户端)格式化程序吗?还有其他方法吗?

注意:这不是 jqGrid need a field editable on Add dialog but not Edit dialog 的副本,因为它专门与 Lib.Web.Mvc.JQuery.JqGrid 相关,而不是一般的 JavaScript 库。

感谢所有帮助。

【问题讨论】:

    标签: asp.net-mvc jqgrid lib.web.mvc


    【解决方案1】:

    这是我现在的做法。这对我来说感觉“错误”和丑陋,但它确实有效。

        function fnSetAccessGroupCodeReadOnly() {
            $("#AccessGroupCode").attr("readonly", "readonly");
        }
    
        function fnUnSetAccessGroupCodeReadOnly() {
            $("#AccessGroupCode").removeAttr("readonly");
        }
    

    在帮助器中,在操作导航器中进行编辑:

        new JqGridNavigatorEditActionOptions()
        {
            // Edit Options
    
            Url = Url.Action("EditPartnerAccessGroup"),
            MethodType = JqGridMethodTypes.Post,
            AfterShowForm = "fnSetAccessGroupCodeReadOnly",
            CloseAfterEdit = true
        },
    

    【讨论】:

    • 不幸的是,jqGrid 中没有内置的机制。你的方法非常好。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-12-05
    • 1970-01-01
    • 1970-01-01
    • 2021-02-12
    • 1970-01-01
    • 2023-04-08
    • 1970-01-01
    相关资源
    最近更新 更多