我有一个JSP页面,它必须显示正在运行的各种作业的状态.其中一些工作需要时间,因此它们的状态需要一段时间才能从处理更改为完成.
拥有一个每隔30秒左右刷新页面的javascript函数是一个好主意吗?有一个不断刷新页面的脚本有什么后果吗?
另一个选项是有一个刷新按钮,点击它会刷新页面.
jee*_*rbl 77
有多种解决方案.如果您希望刷新页面,实际上您不需要JavaScript,如果您在meta标记中添加此标记,浏览器可以为您执行此操作head.
<meta http-equiv="refresh" content="30"/>
Run Code Online (Sandbox Code Playgroud)
然后,浏览器将每30秒刷新一次页面.
如果你真的想用JavaScript做,那么你可以每隔30秒用location.reload()(docs)刷新页面setTimeout():
setTimeout(function() {
location.reload();
}, 30000);
Run Code Online (Sandbox Code Playgroud)
否则,如果您不需要刷新整个页面而只需要刷新其中的一部分,我想Ajax调用将是最有效的方式.
404*_*404 14
只需在head部分中输入一行简单的代码就可以刷新页面
<meta http-equiv="refresh" content="30">
虽然它不是一个javascript函数,但它是希望完成上述任务的最简单方法.
使用setInterval代替setTimeout。尽管在这种情况下,两者都可以,但setTimeout本质上只会setInterval无限期地触发一次。
<script language="javascript">
setInterval(function(){
window.location.reload(1);
}, 30000);
</script>
Run Code Online (Sandbox Code Playgroud)
如果你想刷新页面你可以这样使用,但刷新页面通常不是最好的方法,最好尝试只更新你需要更新的内容。
javascript:
<script language="javascript">
setTimeout(function(){
window.location.reload(1);
}, 30000);
</script>
Run Code Online (Sandbox Code Playgroud)