我正在开发基于Java servlet的Web应用程序。如何自动刷新Java servlet页面
在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()
,但没有奏效。
你为什么使用'load'? – epascarello 2014-11-24 19:59:18
有两种方法可以做到这一点,一个是做拉(即使用元刷新),每隔30秒左右从服务器拉数据。第二种方法是将数据从服务器推送到您的页面,请参阅[Async-IO]中的大气框架(http://async-io.org/) – mprabhat 2014-11-24 20:03:04