【发布时间】:2011-04-20 12:15:58
【问题描述】:
我想通过 Ajax 提交一个表单。此表单存储在局部视图中 - 因此整个局部视图表示单个表单。
我使用 foreach 循环生成了其中的十个表单:
@foreach (Product p in Model.Products)
{
@Html.Partial("_EditProduct", p)
}
这很好用。
在我的 _EditProduct 部分视图中:
@using (Ajax.BeginForm("Update", "Product", new AjaxOptions { UpdateTargetId = "updateStatus" })) {
<span id="updateStatus">Update will go here</span> }
// Product fields
<div>
<input type="submit" value="Update" class="btn"/>
</div>
}
点击提交按钮发布到控制器:
[HttpPost]
public JsonResult Update(int id, FormCollection collection)
{
ProductService pService = new ProductService();
Product p =pService.Find(id);
UpdateModel(p);
return Json(p);
}
这会更新产品,但由于序列化错误而返回崩溃。
主要问题是我很难在 MVC 3 上找到好的资源,尤其是 Ajax 部分。教程和博客似乎以非常不同的方式做所有事情。理想情况下,我希望尽可能多地使用 .NET 和 MVC 3 功能,而不是编写大量的 jQuery/JavaScript。
谢谢
编辑:补充一句,我想远离 MS Ajax Control Toolkit
【问题讨论】:
标签: asp.net-mvc ajax asp.net-mvc-3 asp.net-ajax