ie發(fā)送ajax請求返回上一次結果的解決方法
更新時間:2014年03月28日 17:43:21 作者:
這篇文章主要介紹了ie發(fā)送ajax請求返回上一次結果的解決方法,需要的朋友可以參考下
問題出現原因:
1. ie下面只會建立一次 ajax 請求,將響應結果放在瀏覽器緩存里 下次調用該ajax請求時 從緩存里讀取
get方式時,獲取數據,因發(fā)送參數和地址都一致,故IE瀏覽器會從緩存中取,而不會去請求服務器端,而post方式因為參數的不同,不會產生這個問題
2. 火狐下面 每次激活事件 都會重新建立一次ajax請求
解決方法:
1: 在AJAX請求的頁面后加個隨機函數,我們可以使用隨機時間函數
在javascript發(fā)送的URL后加上t=Math.random()
例如這樣:URL+"&"+"t="+Math.random();或者new Date(); 在 URL 參數后加上 "?timestamp=" + new Date().getTime();
2.
$.ajax({
type: "POST",
async:false, // 設置同步方式
cache:false,//緩存
url: url,
data:data,
success:function(data){
//成功返回值后的操作
}
});
解決方式就是 cache:false
1. ie下面只會建立一次 ajax 請求,將響應結果放在瀏覽器緩存里 下次調用該ajax請求時 從緩存里讀取
get方式時,獲取數據,因發(fā)送參數和地址都一致,故IE瀏覽器會從緩存中取,而不會去請求服務器端,而post方式因為參數的不同,不會產生這個問題
2. 火狐下面 每次激活事件 都會重新建立一次ajax請求
解決方法:
1: 在AJAX請求的頁面后加個隨機函數,我們可以使用隨機時間函數
在javascript發(fā)送的URL后加上t=Math.random()
例如這樣:URL+"&"+"t="+Math.random();或者new Date(); 在 URL 參數后加上 "?timestamp=" + new Date().getTime();
2.
復制代碼 代碼如下:
$.ajax({
type: "POST",
async:false, // 設置同步方式
cache:false,//緩存
url: url,
data:data,
success:function(data){
//成功返回值后的操作
}
});
解決方式就是 cache:false
您可能感興趣的文章:
- Javascript發(fā)送AJAX請求實例代碼
- 詳解JavaScript for循環(huán)中發(fā)送AJAX請求問題
- 防止重復發(fā)送Ajax請求的解決方案
- js與jQuery終止正在發(fā)送的ajax請求的方法
- jQuery通過Ajax向PHP服務端發(fā)送請求并返回JSON數據
- jsp+ajax發(fā)送GET請求的方法
- jquery跨域請求示例分享(jquery發(fā)送ajax請求)
- jquery+ajax每秒向后臺發(fā)送請求數據然后返回頁面的代碼
- Extjs ajax同步請求時post方式參數發(fā)送方式
- AJAX中同時發(fā)送多個請求XMLHttpRequest對象處理方法
- 防止重復發(fā)送 Ajax 請求
相關文章
如何實現ajax延時發(fā)送在空閑之后去發(fā)送ajax請求
關鍵字搜索的功能,還是比較實用的,在實現過程中就需用到ajax延時發(fā)送,下面有個不錯的示例,有需要的朋友可以參考下2013-12-12
甩掉ashx和asmx使用jQuery.ajaxWebService請求WebMethod簡練處理Ajax
這篇文章主要介紹了甩掉ashx和asmx使用jQuery.ajaxWebService請求WebMethod簡練處理Ajax的相關資料,需要的朋友可以參考下2016-08-08

