AJAX表重定向,但应该更新目标?

时间:2013-06-17 22:33:36

标签: c# ajax asp.net-mvc razor

我在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

如您所见,这是一个非常基本的过程。唯一的问题是它重定向页面而不是更新我的目标。我根本无法弄清楚出了什么问题。

1 个答案:

答案 0 :(得分:1)

显然我的jqueryval捆绑包没有在_Layout中呈现。我认为因为它是MVC的默认功能,所以它会这样做。事实并非如此。

警惕在布局中呈现哪些束!