Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何将额外的postdata传递到addrecord函数-JQGrid-MVC。网_C#_.net_Asp.net Mvc 2_Jqgrid - Fatal编程技术网

C# 如何将额外的postdata传递到addrecord函数-JQGrid-MVC。网

C# 如何将额外的postdata传递到addrecord函数-JQGrid-MVC。网,c#,.net,asp.net-mvc-2,jqgrid,C#,.net,Asp.net Mvc 2,Jqgrid,我正在MVC项目中使用JQGrid插件。我试图避免使用“会话”。我已经能够使用JQGrid中的serializedata方法将额外的postdata传递到我的edit和delete函数中 例如 但是,似乎没有serializeAddData函数。是否有其他方法在发送前更改add方法的post数据?有一种方法可以对“编辑”和“添加”对话框进行表单编辑。因此,在这两种情况下都可以使用相同的事件han`ler。比如说, $("#list").jqGrid('navGrid','#pager',

我正在MVC项目中使用JQGrid插件。我试图避免使用“会话”。我已经能够使用JQGrid中的serializedata方法将额外的postdata传递到我的edit和delete函数中

例如


但是,似乎没有serializeAddData函数。是否有其他方法在发送前更改add方法的post数据?

有一种方法可以对“编辑”和“添加”对话框进行表单编辑。因此,在这两种情况下都可以使用相同的事件han`ler。比如说,

$("#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序列化,则
SerializedEditData
事件非常实用。为了能够传递额外的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*/}
);
或者以这种方式更好(请参见关于函数作为
postData
属性的用法):


有没有理由声明
var rowdata
,然后不使用变量就返回函数?@Rajpurohit:不客气!顺便说一句,还有一个好方法是使用
onclickSubmit
callback。它可以像
editData
一样返回扩展数据的对象。看见这种方式的主要优点是附加选项:
options、postData、oper
$("#list").jqGrid('navGrid','#pager',
    {/*navGrid options*/},
    {/*edit options*/
     editData: {SomeExtraData: $('#extradata').val()}
    },
    {/*add options*/
     editData: {SomeExtraData: $('#extradata').val()}
    },
    {/*del options*/},
    {/*search options*/}
);
$("#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*/}
);