当我在Asp.Net MVC应用程序上工作时,在我的应用程序中,我使用jQuery.POST方法提交表单.
例如
jQuery.post('/Product/Save',jQuery(document.forms[0]).serialize(),function (data) { alert('Product Added Successfully.); }
);
在上面的代码片段中,我想传递另一个参数..让我们说.. ProductID.
所以,我的想法是,我想在jQuery.POST方法中传递jQuery(document.forms [0]).serialize()和ProductID变量,因此我可以在我的控制器的action方法中获取Form和ProductID.
有人可以让我知道我会这样做吗?
提前致谢.
最佳答案
您可以使用following plugin将表单序列化为JSON对象并添加其他参数:
$.fn.serializeObject = function()
{
var o = {};
var a = this.serializeArray();
$.each(a,function() {
if (o[this.name]) {
if (!o[this.name].push) {
o[this.name] = [o[this.name]];
}
o[this.name].push(this.value || '');
} else {
o[this.name] = this.value || '';
}
});
return o;
};
像这样:
var data = $('form').serializeObject();
data['ProductId'] = '123';
$.post('<%= Url.Action("Save","Product") %>',data,function (data) {
alert('Product Added Successfully.');
});