在做ajax頁面無刷新添加的時候,IE下遭遇Ajax緩存,因為剛開始並不知道IE有這個壞毛病,折騰好久,終於解決問題。
總結解決方法:
在IE下用Ajax請求某一頁,通常會因為快取的原因而返回上一次的結果,造成混亂,[即get方式時,取得數據,因發送參數和位址都一致,故IE瀏覽器會從快取中取,而不會去請求伺服器端,而post方式因為參數的不同,不會產生這個問題]而FF下不會出現這種情況。為了不受快取影響,可以這樣做:
IE存取策略:
Internet選項--瀏覽歷史記錄--設定-- Internet 暫存檔案的選項改為每次訪問網頁時也可以
1: 在AJAX請求的頁面後面加上隨機函數,我們可以使用隨機時間函數
在javascript發送的URL後加上
1 t=Math.random ()
例如這樣:
1 URL "&" "t=" Math.random();//或new Date();
在URL 參數後面加上www.hake.cc
1 "?timestamp=" new Date().getTime();
最好的方法:
1 $ .ajaxSetup({cache:false})
這樣頁面中所有的ajax請求時,都會執行這個。就不必改變已經完成的N個接口