如何在MVC应用程序中重新加载页面上的编辑数据

时间:2014-03-27 07:58:34

标签: javascript html asp.net-mvc

所以我有一个可编辑的div,现在在我编辑div和刷新页面后,我希望页面显示已编辑的数据,而不是原始的。

1 个答案:

答案 0 :(得分:1)

以下是示例代码。您可能需要根据模型和操作定义对代码进行必要的更改。为了显示已编辑的值,我将模型存储在会话中。但您可以通过数据存储区检索它。如果要在重定向后将模型传递给后续操作,也可以使用TempData

public ActionResult Index()
{
    MyModel mod;
    if (Session["Model"] != null)
    {
         mod = (MyModel)Session["Model"];
    }
    else
    {
        mod = new MyModel { SelectedValue = "10" };
    }
    return View(mod);
}

[HttpPost]
[ValidateInput(false)]
public ActionResult PostModel(MyModel mod)
{
    if (mod != null)
    {
        mod.SelectedValue = mod.SelectedValue + "From PostModel";
        Session["Model"] = mod;
    }

    return RedirectToAction("Index");
}

这是一个视图

@model MVC3Stack.Models.MyModel
@{
    ViewBag.Title = "Home Page";
}
<h2>@ViewBag.Message</h2>
@using (Html.BeginForm("PostModel", "Home", FormMethod.Post))
{
    @Html.TextBoxFor(m=> m.SelectedValue)
    <input type="submit" value="submit" id="submit" />
}