您好,登錄后才能下訂單哦!
本篇內(nèi)容主要講解“怎么解決IE下jquery ajax無法獲得最新數(shù)據(jù)的問題”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“怎么解決IE下jquery ajax無法獲得最新數(shù)據(jù)的問題”吧!
今天修改一個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ù)的值每次都不一樣,時間戳最好不過了。
復(fù)制代碼 代碼如下:
url: '{0}/portal/articleManager/getContents?id={1}&date={2}'.format(window.baseUrl, $("#id").val(), new Date())
其中id是有用的參數(shù),而date參數(shù)我們不做處理就好了。
查資料得知,用post方式請求可以避免在這個問題,POST被認(rèn)為是一個變動性訪問(瀏覽器認(rèn)為POST的提交,必定是有改變的)。
還有一個更簡便的方法,設(shè)置:
復(fù)制代碼 代碼如下:
cache:false,
前提就是此請求的cache還不存在。
到此,相信大家對“怎么解決IE下jquery ajax無法獲得最新數(shù)據(jù)的問題”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。