我有一个包含多个表单的页面的MVC项目。网页上的大部分内容都是基于用户提交的初始表单呈现的。当用户更新该页面上的信息时,我不希望整个页面刷新,我只需要它提交表单并保留在页面上。我试图设置表单以使用AJAX提交,但我不知道如何使控制器方法返回来完成此操作。提交AJAX请求时的控制器方法
形式:
@using (Ajax.BeginForm("ChangeHeatName", "Home", new AjaxOptions(){UpdateTargetId = "HeatNameDiv"}))
{
Heat Name:
Change to:
}
电流控制器:
public ActionResult ChangeHeatName(string heatName, string updatedHeat)
{
string user = User.Identity.Name;
HomeModel H = new HomeModel();
H.ChangeHeatName(heatName, updatedHeat, user);
return Content("Index");
}
+0
你通常要返回一个JsonResult。 –
2013-04-10 20:36:46
+0
如果我只是试图保持在同一页面上,看起来会是什么样子? –
2013-04-10 20:39:09
+1
我会使用jquery'$ .post'命令提交表单数据并返回JSON结果。如果结果表明成功,告诉你的jQuery做一些事情,如果失败了,请做其他事情。我还没有找到'Ajax.BeginForm'非常有用,但这是我个人的偏见。 –
2013-04-10 20:41:53