我有一个 JSP 页面,它必须显示正在运行的各种作业的状态。其中一些作业需要时间,因此它们的状态从处理到完成需要一段时间。
有一个每30秒左右刷新一次页面的 javascript 函数是一个好主意吗?使用一个不断刷新页面的脚本有什么后果吗?
另一个选项是有一个刷新按钮,点击后将刷新页面。
只需要在 head 部分中输入一行简单的代码就可以刷新页面
<meta http-equiv="refresh" content="30">
虽然它不是一个 javascript 函数,但它是最简单的方法来完成上述任务。
如果您想要刷新页面,您可以像这样使用,但是刷新页面通常不是最好的方法,最好尝试只更新您需要更新的内容。
Javascript:
<script language="javascript"> setTimeout(function(){ window.location.reload(1); }, 30000); </script>
对此有多种解决方案。如果你想刷新页面,你实际上不需要 JavaScript,浏览器可以为你做到这一点,如果你添加这个 meta标记在你的 head标记。
meta
head
然后浏览器每30秒刷新一次页面。
如果你真的想使用 JavaScript,那么你可以在 setTimeout()中使用 Location.reload()(医生)每30秒刷新一次页面:
setTimeout()
Location.reload()
window.setTimeout( function() { window.location.reload(); }, 30000);
如果您不需要刷新整个页面,而只需要刷新其中的一部分,我想 AJAX 调用将是最有效的方法。
使用 setInterval代替 setTimeout。虽然在这种情况下,无论是将罚款,但 setTimeout固有的触发只有一次 setInterval继续无限期。
setInterval
setTimeout
<script language="javascript"> setInterval(function(){ window.location.reload(1); }, 30000); </script>