Ajax第二个请求失败



我想下一步更新一些div块->
我的更新视图:

    @Ajax.ActionLink("Show",
             "About",
             new AjaxOptions
             {
                 HttpMethod = "POST",
                 InsertionMode = InsertionMode.Replace,
                 UpdateTargetId = "updateMe"
             })
     <div id="updateMe"> </div>

我的控制器:

    int count  = 0;
    public ActionResult Index()
    {
        return View();
    }
    [HttpPost]
    public ActionResult About()
    {
        if (Request.IsAjaxRequest())
        {   
            count++;
            ViewBag.count  = count;
            return PartialView();
        }
        return RedirectToAction("Index");
    }

我的党派观点:

    <h1>Hellow from Partial View !  @ViewBag.count </h1>

我在.config文件中也有这个

      <add key="UnobtrusiveJavaScriptEnabled" value="true" />

和参考书目:

<script src="@Url.Content("~/Scripts/jquery-1.6.2.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.min.js")" type="text/javascript"></script>

预期:第一次点击:
局部视图中的Hello!1

第二个:
局部视图中的Hello!2

拥有:局部视图中的Hello!1

每次请求都会再次初始化Controller类,因此每次都会重新初始化字段count的值。你会想拥有这个"全球"。一种方法是将其定义为static字段;但请注意,这可能有一些意外行为(如ASP.NET MVC中的静态字段)。

最新更新