今天,有同事發現相關業務資料修改後,在ie6下還是顯示修改前的值。但在其他瀏覽器和ie7、ie8下,沒有這個問題。
原因:用ajax請求時,如果出現重複的url,瀏覽器不會向伺服器傳送請求,而是根據之前相同的url請求結果返回。原因就在於之前的請求及結果已經儲存在了
快取裡,如果遇到相同url時,結果是直接從快取裡取得。
解決辦法:
1、設定ie6中工具-internet選項-internet臨時檔案-設定-檢查每次網頁的較新版本-設定為每次訪問此頁時檢查。
2、在ie傳送ajax資料時,傳送乙個隨機時間戳。即只要讓每次請求的url不一樣就可以了,比如每次請求時在url中加上時間的毫秒數或隨機數(new date().gettime()或者math.random()
)。 另外,網上還有很多解決方法:
1.送請求前加上
或者用post方法提交
2.伺服器端禁用快取(只是禁止了服務端快取,不能禁止ajax快取)
. response.setheader("pragma","no-cache");
response.setheader("cache-control","no-cache");
response.setdateheader("expires", 0);
以上說的都對,但有乙個更簡單的辦法,就是ajax請求時,設快取為false
$.ajax({
url: 'tstrategybase.do?method=checkstrategystates&id='+id,
cache:false,
datatype: 'html',
success: function(data){
後邊的**省略。cache:是否快取,其實就是在url加隨機數
Ajax與IE6快取問題
今天,有同事發現相關業務資料修改後,在ie6下還是顯示修改前的值。但在其他瀏覽器和ie7 ie8下,沒有這個問題。原因 用ajax請求時,如果出現重複的url,瀏覽器不會向伺服器傳送請求,而是根據之前相同的url請求結果返回。原因就在於之前的請求及結果已經儲存在了快取裡,如果遇到相同url時,結果是...
當html css遇到IE6部分問題解決方法
ie6對png的修復 注意 ie6對png24支援度不高,使用會無法顯示。解決方法 1 png8代替png24 清晰度會下降 2 使用js解決,引入js檔案。格式 條件hack css hack指的是乙個特殊的 只在某些瀏覽器中可以識別,其他瀏覽器不能識別。片 練習 適用於以上版本,旨在ie6中執行...
IE6下margin雙倍的問題解決辦法
有時候我們給div乙個margin屬性的時候,在ie6下會發現,這個margin間距產生了雙倍的效果,例如 float left margin left 10px 首頁 這段 在ff和ie7以上版本均正常,但是在ie6下,左間距就會變為20px,這是因為,ie6下當div有float浮動屬性時mar...