Jqgrid 如何使用lib.web.mvc配置beforeShowForm以在add form中显示不可编辑的列

Jqgrid 如何使用lib.web.mvc配置beforeShowForm以在add form中显示不可编辑的列,jqgrid,lib.web.mvc,Jqgrid,Lib.web.mvc,我的某些列不可编辑,但我希望所有列都显示在添加表单中 我在想,我可以使用“beforeShowForm”事件并调用javascript函数,该函数将动态地将列属性更改回可编辑状态,以便它们显示在添加表单中。典型的方法是使字段通常可编辑,并将其隐藏在编辑对话框中 您可以通过查找正在生成ID的表行来隐藏/显示字段,如下所示: tr_ColumnName tr_UserName 因此,如果您有UserName列,则id如下所示: tr_ColumnName tr_UserName 假设您使用的

我的某些列不可编辑,但我希望所有列都显示在添加表单中


我在想,我可以使用“beforeShowForm”事件并调用javascript函数,该函数将动态地将列属性更改回可编辑状态,以便它们显示在添加表单中。

典型的方法是使字段通常可编辑,并将其隐藏在编辑对话框中

您可以通过查找正在生成ID的表行来隐藏/显示字段,如下所示:

tr_ColumnName
tr_UserName
因此,如果您有UserName列,则id如下所示:

tr_ColumnName
tr_UserName
假设您使用的是jQuery,您可以将其连接到Lib.Web.Mvc配置,如下所示:

.Navigator(new Lib.Web.Mvc.JQuery.JqGrid.JqGridNavigatorOptions() { ... },
    editActionOptions: new Lib.Web.Mvc.JQuery.JqGrid.JqGridNavigatorEditActionOptions()
    {
        ...
        BeforeShowForm : "function(form) { $('#tr_UserName', form).hide(); }"
    },
    addActionOptions: new Lib.Web.Mvc.JQuery.JqGrid.JqGridNavigatorEditActionOptions()
    {
        ...
        BeforeShowForm : "function(form) { $('#tr_UserName', form).show(); }"
    }
);

我想知道如何在ShowForm之前使用事件

注意:我在视图顶部有一个using语句,因此不需要使用完整的名称空间

@using Lib.Web.Mvc.JQuery.JqGrid 
以下是Navigator表单中的一个示例:

.Navigator(new JqGrid.JqGridNavigatorOptions() 
{ Add = true, Edit = false, Delete = false, Search = false }, 
null, 
addActionOptions: new JqGridNavigatorEditActionOptions()
    {
        Url = Url.Action("Add"),
        BeforeShowForm = "function () {$('#bob').jqGrid('setColProp', 
        'Place', {editable:true})
    })