娘希匹,又遇到快取問題了。
下面的**,在其他瀏覽器都是正常的,但是在ie8中出現詭異問題。
$.ajax(});
經過仔細排查,尼瑪是 ie8 存在的 ajax 快取問題。尼瑪,執行到這裡,實際上,並沒有訪問我們後台的**,而是使用了以前快取的結果,後台進行除錯時,沒有反應,才發現是這個問題!!!!ie8肯跌啊。
但是 奇怪的是,很多地方都是這樣的**,為什麼只有這裡被快取,而其他地方沒有快取問題呢?
後來想通了:因為這個ajax呼叫每次返回的結果是一樣的!
解決方法:
1.
$.ajaxsetup();
2. 引數加上屬性:cache:false
$.ajax(});
3. 還可以在 url 後面加上時間戳等方法。
教訓:
程式設計師真是應該:過馬路要兩邊看!
不要太相信預設值,需要什麼屬性,一定要指明。所以最好每次都指明:cache:false,或者每個js 頁面保證在最開始處執行一次:
$.ajaxsetup();
其實 路徑帶上時間戳或者隨機數的方法,有時並不可靠!可能是瀏覽器會忽略它吧。反正ie8多次遇到 url帶時間戳失效的情況。 Ajax的IE快取問題
ajax的ie快取問題,會造成用open時用get方法不能重複提交。解決的辦法有以下幾種 1.客戶端在url後新增隨機數.new date gettime 或者math.random 或者送請求前加上 或者用post方法提交 2.伺服器端禁用快取.response.setheader pragma ...
IE7 IE8快取問題
使用ajax刪除頁面上的記錄時,會有這種情況出現 第一次刪除操作後,將游標定位在位址列中,回車,頁面正常顯示 刪除的記錄消失 當我們再次刪除其他記錄時,位址列回車,此時,刪除的記錄又會重現。這就是ie快取在作怪。大致有兩種解決方案 1 給ajax請求新增隨機數,如 new ajax.request ...
Ajax與IE6快取問題
今天,有同事發現相關業務資料修改後,在ie6下還是顯示修改前的值。但在其他瀏覽器和ie7 ie8下,沒有這個問題。原因 用ajax請求時,如果出現重複的url,瀏覽器不會向伺服器傳送請求,而是根據之前相同的url請求結果返回。原因就在於之前的請求及結果已經儲存在了快取裡,如果遇到相同url時,結果是...