2013-03-18 111 views
-2

我有一個網頁,使用jquery.ajax來執行一些操作。當我調用ajax動作時,關閉瀏覽器然後打開它,我看不到由ajax所做的更改。我如何強制瀏覽器刷新頁面打開?刷新瀏覽器緩存打開它

+0

你的「ajax動作」是手動調用還是在'document.ready()'上調用? – Archer 2013-03-18 13:09:40

+0

手動調用 – szaman 2013-03-18 13:11:01

+0

因此,當您刷新頁面時,需要再次調用ajax以使其生效。或者我誤解了一些東西?頁面刷新將僅顯示它,因爲它在源代碼中。 – Archer 2013-03-18 13:13:09

回答

1

嘗試加入提出的解決方案。 location.reload()只會無法正常工作,因爲瀏覽器將無限重新加載頁面。

嘗試在document.ready()上調用web服務器的ajax調用,該選項僅在頁面上的內容發生更改時纔會檢查。用當前頁面內容來對付它,並在需要時進行刷新。您需要在您的ajax調用中使用cache參數。如果沒有它,呼叫將返回其先前的狀態。

3

它添加到<head>段:

<meta http-equiv="cache-control" content="no-cache"> 

應該強迫你的瀏覽器,每次刷新頁面加載時

這裏是東西,以防止AJAX被緩存:

$.ajax({ 
    url: "test.html", 
    cache: false 
}).done(function(html) { 
    $("#results").append(html); 
}); 
+0

這是否也強制ajax調用不被緩存?我不認爲它確實如此。 – Archer 2013-03-18 13:02:48

+0

因爲你可以在jquery中設置一些標誌來停止緩存中的ajax – ITroubs 2013-03-18 13:03:36

+0

是的,我知道。感謝您的加入:) – Archer 2013-03-18 13:06:31