我在 Razor 中定义了一个 AJAX 表单,如下所示:
using (Ajax.BeginForm("SaveProfile", "Settings",
new AjaxOptions
{
HttpMethod = "Post",
InsertionMode = InsertionMode.Replace,
UpdateTargetId = "result"
}))
{
...
...
表格的其余部分非常基本。几个文本框和一个提交按钮。
这是控制器动作:
[HttpGet]
public ActionResult SaveProfile(int AccountID, string DisplayName, string Email)
{
string message = "Changes saved successfully.";
var user = db.LoginUsers
.Where(m => m.ID == AccountID)
.First();
if (user != null)
{
user.DisplayName = DisplayName;
user.Email = Email;
db.SaveChanges();
}
else
message = "Error. Changes were not saved.";
return PartialView("_Saved", message);
}
这是部分视图"_Saved"
:
@model string
@Model
如您所见,这是一个非常基本的过程。唯一的问题是它重定向页面而不是更新我的目标。我根本无法弄清楚出了什么问题。