關於ajax請求在IE6,9下的快取問題

2021-06-02 01:08:54 字數 1238 閱讀 6445

最近的專案中,用到了很多ajax請求,大多用的都是jquery中的函式,如$.getjson(),為的是返回乙個json格式的字串便於後續操作。

這樣寫,看上去沒有什麼問題,在ie7、8,opera、firefox下測試都沒有什麼問題。

但是,當在ie6和ie9下測試的時候,總是請求不到後台的新資料,然後懷疑是快取問題,搜尋解決的辦法,絕大多數朋友都說給頁面的頭部加如清楚快取的**。

還有在jsp頁面頭部加入

<%

response.setheader("pragma","no-cache");

response.setheader("cache-control","no-cache");

response.setdateheader("expires",0);

response.flushbuffer();

%>

這些可能只要是頁面重新整理的情況下是有作用的,但也只是清除頁面的快取,而不是請求快取。ajax請求不重新整理頁面,假如這些沒有作用。

除錯的時候發現,在ie6下當兩次請求的action路勁一樣的時候,就會沒有進入action中的方法,但是返回資料依然有,不過是舊的。

這樣的話,請求的action的路勁後面加入乙個隨機數,比如:

&.getjson("/login.do?rand="+math.random(),function(data){});如此一來,每次請求都會進入action,當然快取問題也就迎刃而解了。

另外還遇到一種情況,就是將上面的$.getjson("/login.do",,function(data){})寫成這樣竟然不起作用,只有向上面一樣寫,才可以。

難道這是偶然情況。

AJAX在IE下的除錯

ajax在ie下的除錯 如果是ie9,而自帶的f12工具,可除錯ajax.可是我的是ie8.然後使用ie web developer v2.4.1.122 可是http monitor 老是奔潰。pass 最後只好用抓包工具了。w porer 1.3,先附加到ie程序,然後監聽就可以了,可以看到發出...

Easyui 在IE 環境下發ajax請求失敗

今天用easyui做一張表的修改功能時遇到的錯,修改前需要將記錄先從資料庫讀出來嘛,用的是jquery的 ajax,以上所說暫時跟bug沒多大關係.現在進入正題 用火狐firefox測試時完全正常,可是到了ie,這個用ajax請求的資料就是載入不過來.然後開啟ie的除錯模式,f12,卻發現在這個模式...

關於ajax的多次請求問題

我們在用ajax請求資料時,可能會遇到一次點選多次觸發的可能。比如說 ajax 的 onreadystatechange 事件就會觸發多次 這是因為 onreadystatechange 是乙個事件控制代碼。它的值 state change 是乙個函式的名稱,當 xmlhttprequest 物件的...