gpt4 book ai didi

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

转载 作者:太空狗 更新时间:2023-10-30 00:27:45 25 4
gpt4 key购买 nike

我在 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/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com