首頁  >  文章  >  web前端  >  ajax頁面無刷新 IE下遭遇Ajax快取導致資料不更新的問題_jquery

ajax頁面無刷新 IE下遭遇Ajax快取導致資料不更新的問題_jquery

WBOY
WBOY原創
2016-05-16 17:46:49972瀏覽

在做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個接口

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn