2012-09-18 52 views
1
重新加載內容

OK,所以基本上這是我的問題:未能通過Ajax

  • 我有一個表中的動態頁面在它
  • 當用戶點擊刪除條目,該條目從數據庫中刪除,表使用Ajax
  • 重新加載(通過控制器)。然而,即使內容再牽強,它一直顯示我的內容以前的版本(如同頁面在某種程度上緩存?) 。如果我重新加載整個頁面,它顯示正常...

會發生什麼?

+1

您需要發佈一段代碼,以便我們可以幫助您進行調試。請發佈ajax查詢和回調。 –

回答

1

您使用的是Chrome嗎?

我使用Chrome上的Ajax調用時,發現了類似的行爲。

如果您正在使用jQuery做AJAX調用,您可以使用屬性緩存:假的AJAX方法來避免這種行爲。

1

確保你的Ajax請求沒有被緩存在客戶端上。假設你正在使用jQuery,有一個設置:http://api.jquery.com/jQuery.ajax/這是神奇的。

使用螢火蟲或Chrome瀏覽器開發工具來檢查你的請求/響應頭。有可能像cache-controllast-modified這讓您的瀏覽器緩存請求。

任何服務器端緩存引擎?

1

我想你會得到緩存的資料。調用數據重新加載以解決此問題時,您可能會向ajax調用添加唯一的時間戳。

您可以使用$.now函數返回一個表示當前時間的數量。

$("#someDiv").load("yourPage.php"+$.now()); 
1

它其實是一個緩存相關的問題。因此,爲了確保這一點,只需模擬新的URI,如

$.post("yourupdatepage.php?r="+(Math.random() * (1000 - 1) + 1), 
    ... 
);