IE下jquery ajax無法獲得最新數(shù)據(jù)的問題解決(IE緩存)
今天修改一個bug,利用ajax查詢數(shù)據(jù),在谷歌瀏覽器下可以獲取到最新數(shù)據(jù),而在IE中獲得是舊數(shù)據(jù),無法獲得最新的數(shù)據(jù),經(jīng)查資料,才發(fā)現(xiàn)時IE緩存再作怪。
發(fā)現(xiàn)此ajax請求用的get方式,每次請求的URL一模一樣,IE瀏覽器有個特殊的地方,如果每次請求的URL一樣時,就會拿出緩存中已有的數(shù)據(jù)顯示在頁面上,并不會再次去查詢數(shù)據(jù)庫,所以每次顯示的都是舊數(shù)據(jù)。
解決辦法:
那就有思路了,我們可以讓它每次請求的URL不一樣,可以加一個參數(shù),而且這個參數(shù)的值每次都不一樣,時間戳最好不過了。
url: '{0}/portal/articleManager/getContents?id={1}&date={2}'.format(window.baseUrl, $("#id").val(), new Date())
其中id是有用的參數(shù),而date參數(shù)我們不做處理就好了。
查資料得知,用post方式請求可以避免在這個問題,POST被認為是一個變動性訪問(瀏覽器認為POST的提交,必定是有改變的)。
還有一個更簡便的方法,設(shè)置:
cache:false,
前提就是此請求的cache還不存在。
相關(guān)文章
Ajax 給 XMLHttpReq.onreadystatechange傳遞參數(shù)
這篇文章主要介紹了Ajax如何給XMLHttpReq.onreadystatechange =函數(shù)傳遞參數(shù),需要的朋友可以參考下2014-05-05
基于Ajax技術(shù)實現(xiàn)考試倒計時并自動提交試卷
這篇文章主要介紹了基于Ajax技術(shù)實現(xiàn)考試倒計時并自動提交試卷 的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-06-06
AJAX驗證數(shù)據(jù)庫內(nèi)容并將值顯示在頁面
光標離開文本框,在本頁面的相應(yīng)地方獲取數(shù)據(jù)庫中改值所對應(yīng)的其他數(shù)據(jù),相應(yīng)的實現(xiàn)代碼如下,感興趣的朋友可以看看2014-08-08
PHP+AJAX無刷新實現(xiàn)返回天氣預(yù)報數(shù)據(jù)
天氣數(shù)據(jù)是通過采集中國氣象網(wǎng)站的。本來中國天氣網(wǎng)站也給出了數(shù)據(jù)的API接口,接下來為大家介紹下用php來寫一個天氣預(yù)報的模塊,感興趣的朋友可以參考下2013-07-07
django中使用jquery ajax post數(shù)據(jù)出現(xiàn)403錯誤的解決辦法(兩種方法)
在django中,使用jquery ajax post數(shù)據(jù),會出現(xiàn)403的錯誤,大家知道該如何解決嗎?下面由腳本之家小編給大家分享兩種解決辦法,需要的朋友可以參考下2015-09-09
ajax AjaxDownloader.js[modified]
漏洞版本老啦,實用性不夠了,just have fun!2008-07-07
AJAX請求數(shù)據(jù)及實現(xiàn)跨域的三種方法詳解
ajax跨域這個問題其實很常見,這篇文章主要給大家介紹了關(guān)于AJAX請求數(shù)據(jù)及實現(xiàn)跨域的三種方法的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2021-12-12

