IE下jquery ajax無(wú)法獲得最新數(shù)據(jù)的問(wèn)題解決(IE緩存)
今天修改一個(gè)bug,利用ajax查詢數(shù)據(jù),在谷歌瀏覽器下可以獲取到最新數(shù)據(jù),而在IE中獲得是舊數(shù)據(jù),無(wú)法獲得最新的數(shù)據(jù),經(jīng)查資料,才發(fā)現(xiàn)時(shí)IE緩存再作怪。
發(fā)現(xiàn)此ajax請(qǐng)求用的get方式,每次請(qǐng)求的URL一模一樣,IE瀏覽器有個(gè)特殊的地方,如果每次請(qǐng)求的URL一樣時(shí),就會(huì)拿出緩存中已有的數(shù)據(jù)顯示在頁(yè)面上,并不會(huì)再次去查詢數(shù)據(jù)庫(kù),所以每次顯示的都是舊數(shù)據(jù)。
解決辦法:
那就有思路了,我們可以讓它每次請(qǐng)求的URL不一樣,可以加一個(gè)參數(shù),而且這個(gè)參數(shù)的值每次都不一樣,時(shí)間戳最好不過(guò)了。
url: '{0}/portal/articleManager/getContents?id={1}&date={2}'.format(window.baseUrl, $("#id").val(), new Date())
其中id是有用的參數(shù),而date參數(shù)我們不做處理就好了。
查資料得知,用post方式請(qǐng)求可以避免在這個(gè)問(wèn)題,POST被認(rèn)為是一個(gè)變動(dòng)性訪問(wèn)(瀏覽器認(rèn)為POST的提交,必定是有改變的)。
還有一個(gè)更簡(jiǎn)便的方法,設(shè)置:
cache:false,
前提就是此請(qǐng)求的cache還不存在。
相關(guān)文章
ajax獲得json對(duì)象數(shù)組 循環(huán)輸出數(shù)據(jù)的方法
今天小編就為大家分享一篇ajax獲得json對(duì)象數(shù)組 循環(huán)輸出數(shù)據(jù)的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-08-08Ajax加載外部頁(yè)面彈出層效果實(shí)現(xiàn)方法
這篇文章主要介紹了Ajax加載外部頁(yè)面彈出層效果實(shí)現(xiàn)方法,涉及Ajax加載彈出層的實(shí)現(xiàn)技巧,非常簡(jiǎn)單實(shí)用,需要的朋友可以參考下2015-05-05