控制器未从 AJAX 刷新

Controller not Refreshing from AJAX

我对如何从我的客户端刷新控制器感到困惑。我从我的客户端发送一个调用来点击控制器中的 ActionMethod,它将在 7 秒后刷新我的页面。调用到达 Controller,创建了日志,但从未发生刷新。

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

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

Refresh ActionResult 方法仅在 7 秒后调用 Refresh,没有附加视图:

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

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

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

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