2011-03-22 91 views
24

在网络表单,我会做自动刷新ASP.NET MVC

<script type="text/JavaScript"> 
    function timedRefresh(timeoutPeriod) { 
     setTimeout("location.reload(true);", timeoutPeriod); 
    } 
    </script> 

    <body onload="JavaScript:timedRefresh(5000);"> 

或代码隐藏Page_Load中

Response.AddHeader("Refresh", "5"); 

问题如何使屏幕刷新,每5秒ASP.NET MVC3

+0

,因为他们在做的WebForms两种这些方法的工作原理完全相同的MVC ... :) – adamjford 2011-03-22 18:56:51

回答

60

你可以在MVC中做同样的事情:

<script type="text/javascript"> 
function timedRefresh(timeoutPeriod) { 
    setTimeout(function() { 
     location.reload(true); 
    }, timeoutPeriod); 
} 
</script> 
<body onload="JavaScript:timedRefresh(5000);"> 
    ... 
</body> 

或使用meta标签:

<head> 
    <title></title> 
    <meta http-equiv="refresh" content="5" /> 
</head> 
<body> 
    ... 
</body> 

或在你的控制器动作:

public ActionResult Index() 
{ 
    Response.AddHeader("Refresh", "5"); 
    return View(); 
} 
+2

什么如果我只想刷新一次我的视图? – SamekaTV 2014-05-24 06:47:33

+0

@ISeeSharp你必须使用JQuery来实现你自己的代码。 – 2016-12-27 19:10:47