我有一个JSP页面,它必须显示正在运行的各种作业的状态。其中一些工作需要时间,所以需要一段时间才能将他们的状态从处理改为完成。每30秒自动刷新页面
拥有一个JavaScript函数可以每隔30秒刷新一次页面,这是一个好主意吗?有一个不断刷新页面的脚本会有什么后果吗?
另一种选择是有一个刷新按钮,点击时会刷新页面。
我有一个JSP页面,它必须显示正在运行的各种作业的状态。其中一些工作需要时间,所以需要一段时间才能将他们的状态从处理改为完成。每30秒自动刷新页面
拥有一个JavaScript函数可以每隔30秒刷新一次页面,这是一个好主意吗?有一个不断刷新页面的脚本会有什么后果吗?
另一种选择是有一个刷新按钮,点击时会刷新页面。
这有多种解决方案。如果你想刷新页面,你实际上不需要JavaScript,如果你在head
标签中加入这个meta
标签,浏览器就可以为你做。
<meta http-equiv="refresh" content="30"/>
然后浏览器每隔30秒刷新页面。
如果你真的想用JavaScript来做到这一点,那么你就可以刷新页面内setTimeout()
与location.reload()
(docs)每30秒:
setTimeout(function() {
location.reload();
}, 30000);
否则,如果你不需要刷新整个页面,但只有一部分,我想Ajax调用将是最有效的方式。
如果你想刷新页面,你可以像这样使用,但刷新页面通常不是最好的方法,最好尝试更新你需要更新的内容。
的javascript:
<script language="javascript">
setTimeout(function(){
window.location.reload(1);
}, 30000);
</script>
不刷新整个页面,只刷新页面的内容 - 需要使用_AJAX_ – Tushar
更新的页面的一部分@Tushar有一个很好的建议...只需刷新内容需要更新的页面部分即可。一个刷新脚本可能与在requestAnimationFrame循环内每隔30秒触发一次jQuery'.load()'一样简单。 – markE
http://www.onextrapixel.com/2012/02/06/a-beginners-guide-to-using-ajax-in-your-website/ –