【发布时间】:2009-04-08 14:53:36
【问题描述】:
我知道应该有一个简单的方法来做到这一点,但我想我的大脑今天不工作了。我需要在 x 秒内刷新一个页面。我可以使用以下方法在 .NET 中做到这一点:
Response.AddHeader("Refresh", "300");
这很好,只是我还需要显示距离下一次刷新的分钟数和秒数。
所以我在 javascript 中使用以下代码从客户端执行此操作:
<script type="text/javascript"">
//enter refresh time in "minutes:seconds" Minutes should range from 0 to inifinity. Seconds should range from 0 to 59
var limit="0:30"
if (document.images){
var parselimit=limit.split(":")
parselimit=parselimit[0]*60+parselimit[1]*1
}
function beginrefresh(){
if (!document.images)
return
if (parselimit==1)
window.location.reload()
else{
parselimit-=1
curmin=Math.floor(parselimit/60)
cursec=parselimit%60
if (curmin!=0)
curtime=curmin+" minutes and "+cursec+" seconds left until page refresh!"
else
curtime=cursec+" seconds left until page refresh!"
window.status=curtime
setTimeout("beginrefresh()",1000)
}
}
window.onload=beginrefresh;
</script>
除了一件事之外,这有效 - 每次刷新页面时,浏览器 (IE) 都会发出关于重新下载内容或其他内容的唠叨消息。这是不行的。这是一个用户将整天打开的页面,它需要在没有用户干预的情况下刷新。 我想我可以取消显示直到下次刷新的时间的消息,而只使用 ASP.NET 行,但如果有人有更好的主意,我将不胜感激。
【问题讨论】:
标签: c# .net asp.net javascript