Ajax第二次请求失败

时间:2012-07-23 22:48:22

标签: ajax asp.net-mvc-4

我希望下一步更新一些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");
    }

我的PartialView:

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

我也有.config文件

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

并引用了libriries:

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

预期:首先点击:
 来自部分视图的Hellow! 1

第二:
 来自部分视图的Hellow! 2

有:部分视图中的Hellow! 1

1 个答案:

答案 0 :(得分:2)

每次请求都会初始化Controller类,因此每次都会重新初始化字段count的值。你想要这个“全球”。一种方法是将其定义为static字段;但要注意,这可能会有一些意想不到的行为(如static field in ASP.NET MVC)。