c# - 如何将额外的 postdata 传递到添加记录函数 - JQGrid-MVC。网

标签 c# .net asp.net-mvc-2 jqgrid

我在 MVC 项目上使用 JQGrid 插件。我试图避免使用“ session ”。我已经能够使用 JQGrid 中的序列化数据方法将额外的 postdata 传递到我的编辑和删除函数中。

例如

serializeEditData: function (postdata) 
{
    var rowdata = jQuery('#gridId').getRowData(postdata.id);
    return {id: postdata.id, oper: postdata.oper, SomeExtraData: $('#extradata').val()};
}

但是,似乎没有 serializeAddData 函数。有没有另一种方法可以在发送之前更改添加方法的发布数据?

最佳答案

一个方法 editGridRow它为“编辑”和“添加”对话框实现表单编辑。所以同样的事件 han`ler serializeEditData可以在这两种情况下使用。例如,

$("#list").jqGrid('navGrid','#pager',
    {/*navGrid options*/},
    {/*edit options*/
        serializeEditData: function (postdata) {
            // your implementation of serializeEditData for edit
        }
    },
    {/*add options*/
        serializeEditData: function (postdata) {
            // your implementation of serializeEditData for add
        }
    },
    {/*del options*/},
    {/*search options*/}

/);

如果您需要将发布的数据所有转换为另一种格式,例如进行 JSON 序列化,通常 serializeEditData 事件非常实用。为了能够传递额外的 postdata 参数,您可以使用 editData 参数,它与 jqGrid 的 postData 参数具有相同的含义:

$("#list").jqGrid('navGrid','#pager',
    {/*navGrid options*/},
    {/*edit options*/
     editData: {SomeExtraData: $('#extradata').val()}
    },
    {/*add options*/
     editData: {SomeExtraData: $('#extradata').val()}
    },
    {/*del options*/},
    {/*search options*/}
);

或以这种方式更好(参见 this answer 关于将函数用作 postData 的属性):

$("#list").jqGrid('navGrid','#pager',
    {/*navGrid options*/},
    {/*edit options*/
     editData: {SomeExtraData: function() {return $('#extradata').val();}}
    },
    {/*add options*/
     editData: {SomeExtraData: function() {return $('#extradata').val();}}
    },
    {/*del options*/},
    {/*search options*/}
);

关于c# - 如何将额外的 postdata 传递到添加记录函数 - JQGrid-MVC。网,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5246555/

相关文章:

c# - 使用驱动程序签名证书进行代码签名

c# - Powershell 自定义 cmdlet 在标准方法的实现之外调用 WriteVerbose

c# - 元素列表错误后出现非法字符和缺失 ]

asp.net-mvc - ASP.NET MVC - 在 URL 中隐藏 id?

asp.net-mvc-2 - 如何防止在 asp.net mvc 应用程序中从浏览器访问脚本、内容、aspnet_client 等隐藏目录?

c# - WCF服务Process.Start在网络服务帐户下模拟为其他用户

c# - 当元素不存在时将元素添加到数组中

c# - .NET Web Api 2.1 中 Ninject 绑定(bind)的无参数构造函数错误

c# - 将 WCF REST 服务托管为 Windows 服务

c# - 有没有办法验证 MVC 2 中传入的 HttpPostedFilebase 文件?