【发布时间】:2016-01-31 16:53:40
【问题描述】:
在 ASP.NET MVC 应用程序上工作。 一个表单有几个提交表单的按钮。 其中一个按钮需要在不提交表单的情况下将表单的控件状态发送到控制器。 我打算使用 Ajax 和 $('#FormID').serialize();
我是这样写的:
function rechercher() {
var formStatus = $('#FormID').serialize();
var url = '@Url.Action("Search", "ImproItemForm"); //?'+ formStatus;
// alert('formStatus: ' + formStatus); //works fine
alert('url: ' + url);
$.ajax({
url: url,
type: 'POST',
dataType: 'json',
data:/* { improItem: formStatus },*/ formStatus ,
contentType: "application/json; charset=utf-8",
success: function (result) {
alert("success" + result);
},
error: function (result) {
alert("failure" + result);
}
});
}
我的控制器动作如下:
public ActionResult Search(FormCollection improItem)
{
}
如果我以这种方式调用 ajax,它永远不会到达控制器(因此会触发错误函数。
如果我评论这一行:
data: formStatus ,
然后它确实调用了控制器方法,但 FormCollection improItem 参数当然没有值。 所以我想我没有正确地将数据传递给 Ajax,但我没有设法得到这个排序。
提前谢谢。
【问题讨论】:
标签: javascript c# jquery ajax asp.net-mvc