控制器没有从AJAX刷新

时间:2016-10-09 09:47:58

标签: c# ajax asp.net-mvc client-server

我很困惑如何从我的客户端刷新控制器。我从我的客户端发出一个电话,在控制器中点击一个ActionMethod,它将在7秒后刷新我的页面。调用将转到Controller,创建日志但不会发生刷新。

Ajax调用命中控制器的ActionMehtod并刷新整个Controller / DOM。

<script>
   $.get("@Url.Action("Refresh","Driver")",function(data){
   $("#View1").html(data);
    });
   alert("Refresher ActionResult Exit");
</script>

刷新ActionResult方法只需在7秒后调用Refresh,没有附加View:

 public ActionResult Refresh()
    {
        logger.AddLog("PAGE Refresh Set to 7 sec");
        Response.AddHeader("Refresh", "7");
        logger.AddLog("Returning From Refresher Function");
        return View();
    }

1 个答案:

答案 0 :(得分:1)

我认为你混淆了两种不同的刷新方法。

如果您想每7秒更新页面的一部分(#View1),最好的方法是在_Layout.cshtml中使用setInterval()的javascript。在那种情况下,不需要刷新标头。

如果您想每7秒更新整个页面,请使用视图中的Response.AddHeader()或<meta http-equiv="refresh" content="7">中的_Layout.cshtml,然后无需使用javascript。