我正在开发一个基于Java servlet的Web应用程序。
在Java servlet的后面,一个线程工作。 Java servlet输出html和java脚本代码。因此,html和java脚本代码通过线程动态变化。
我制作了以下代码。 html和javascript代码由response.getWriter().println()
输出。
问题是;线程完成后,不会显示任何内容。 但是,当我在线程完成后手动刷新页面(Ctrl-R)时,我得到了我期望的页面。
<head>
<script type=\"text/javascript\">
var auto_refresh = setInterval(
function start()
{
$('#load_latest').load('./PubRecommendation' + ' #load_latest');
}, 2000);
</script>
</head>
if (result == null) {
// the variable result is received from a behind thread every 2 seconds.
// while a thread is processed
<div id=\"load_latest\">
<p>Currently processing. <p>
</div>
} else {
// a thread is completed
<div id="refresh">
<p>Process is done. <p>
</div>
}
我已经尝试了location.reload()
,但它没有用。
答案 0 :(得分:0)
您可以使用它来刷新我使用过的页面,然后将它放在html或jsp页面的末尾:
<script type="text/javascript">
var cookie = ("" + document.cookie);
if(!cookie.match(/\S/))
{
document.cookie = "refresh";
location.reload(true);
}
else
{
document.cookie = "refresh; expires=Thu, 01 Jan 1970 00:00:00 GMT";
}
</script>
这将在页面第一次加载时设置一个cookie,然后自动刷新,它将检查cookie,如果它已被刷新一次,那么它将不会第二次重新加载并删除cookie。
答案 1 :(得分:0)
这个词是Meta Refresh。搜索Google会为您提供足够的示例。
例如:
<meta http-equiv="refresh" content="5; url=/PubRecommendation#load_latest">
在最后一次加载完成后5秒内加载您的页面。