2013-06-23 130 views
-2

我在Wolfram Mathematica中構建了一個Web應用程序,它直接在瀏覽器上顯示DB數據。我怎樣才能每15秒鐘刷新頁面?

我把我的應用程序放在Apache Tomcat中。

我想每15秒重新加載此頁面,因爲如果您重新加載頁面,我們將獲得DB的更新數據。

我該怎麼做?

+2

數,請把「JavaScript的頁面重新加載」到谷歌和閱讀的結果 – zerkms

+0

這是絕對AJAX的情況...請參閱passionateCoder的評論 –

回答

11

添加一個這樣的腳本在頁面的頭部分:

<script type="text/javascript"> 
window.setTimeout(function(){ document.location.reload(true); }, 15000); 
</script> 

setTimeout方法將在15秒後開始回調,而reload方法將刷新頁面。參數true使瀏覽器總是再次請求頁面,而不是使用緩存版本。

+0

這應該讀取window.setInterval,以保持刷新與一些更先進的邏輯。 – clops

+0

@clops:這不會有什麼區別,因爲當頁面重新加載時間隔被刪除。被加載的新頁面會啓動自己的超時,在再過15秒後重新加載,等等。 – Guffa

+0

我的評論只是一個案例的建議,在這種情況下,如果某些邏輯應該暫停此過程,您不想刷新屏幕。 – clops

8

這很糟糕不是嗎?在15秒內重新加載一次頁面將徹底打破用戶體驗。用戶將無法正確讀取頁面以在15秒內獲取上下文。

爲什麼不使用ajax來獲取結果,以便在15秒內更新包含數據的容器?由此你會給用戶更新的信息。

$.ajax({ 
    type: "POST", 
    url: "some.php", //some server method which will get u new data from database 
    data: { name: "John", location: "Boston" } 
}).done(function(msg) { 
    var i= 0; 
    for(; i< msg.d.length; i++) 
    { 
    $("#container").append(msg.d[i]); 
    }  
}); 

其中#container是您有數據表示的地方。

AJAX文檔:http://api.jquery.com/jQuery.ajax/

0

在HTML文檔的頭部下面的代碼也將刷新頁面,而無需使用任何JavaScript:

<meta http-equiv="refresh" content="15" /> 
2

只需添加<meta content='15' http-equiv='refresh'/><head></head>之間。更改您需要,就像如果你需要你的頁面後30秒加載,然後將值改爲15至30

<head> 
<meta content='15' http-equiv='refresh'/> 
</head>