每30秒自动刷新一次页面

时间:2015-10-02 18:07:04

标签: javascript html

我有一个JSP页面,它必须显示正在运行的各种作业的状态。其中一些工作需要时间,因此需要一段时间才能将其状态从处理更改为完成。

拥有一个每隔30秒左右刷新一次页面的javascript函数是一个好主意吗?有一个不断刷新页面的脚本会有什么后果吗?

另一个选项是有一个刷新按钮,点击它会刷新页面。

4 个答案:

答案 0 :(得分:50)

有多种解决方案。如果您希望刷新页面实际上不需要JavaScript,那么如果您在meta标记中添加此head标记,浏览器就可以为您执行此操作。

<meta http-equiv="refresh" content="30"/>

然后,浏览器将每隔30秒刷新一次页面。

如果您真的想使用JavaScript,那么您可以在location.reload()内使用setTimeout()docs)每30秒刷新一次页面:

setTimeout(function() {
  location.reload();
}, 30000);

否则,如果您不需要刷新整个页面而只需要刷新其中的一部分,我想Ajax调用将是最有效的方式。

答案 1 :(得分:7)

头部中只需一行简单的代码即可刷新页面

<meta http-equiv="refresh" content="30">

虽然它不是一个javascript函数,但它是希望完成上述任务的最简单方法。

答案 2 :(得分:3)

如果你想刷新你可以这样使用的页面,但刷新页面通常不是最好的方法,最好只尝试更新你需要更新的内容。

<强>的javascript:

CloudKit

答案 3 :(得分:0)

使用setInterval代替setTimeout。尽管在这种情况下两者都可以,但是setTimeout仅在setTimeout无限期地持续时才固有地触发。

<script language="javascript">
setInterval(function(){
   window.location.reload(1);
}, 30000);
</script>