在此情况下为什么
如果我将JavaScript更改为:
id
在到达Action时为空?
Javascript
$("#ajax-submit").click(function () {
var data = { setup: $("form").serialize(), id: "12345" };
$.ajax({
type: 'POST',
url: "/MyController/Process",
data: JSON.stringify(data),
success: function () { alert("Successful"); },
dataType: "json"
});
});
操作
[HttpPost]
public ActionResult Process(SetupModel setup, string id)
{
// id is null, setup is not!
}
如果我将JavaScript更改为:
$.ajax({
type: 'POST',
url: "/MyController/Process",
data: { setup: $("form").serialize(), id: "12345" },
success: function () { alert("Successful"); },
dataType: "json"
});
然后 id
绑定,但是 setup
没有绑定!
目标
我正在尝试开发一个逐步向导,其中整个模型在单个视图中呈现,并使用JavaScript显示/隐藏div以模拟转到下一页/上一页。
然而,我的问题是,其中一步需要建立一个列表(不提交整个模型)。为了实现这一点,我试图将数据提交为此时的数据(带有额外参数),在控制器中更新模型,然后使用更新后的模型重新加载视图。