溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么解決jquery ajax不兼容ie8的問題

發布時間:2021-01-05 14:32:21 來源:億速云 閱讀:359 作者:小新 欄目:web開發

了解怎么解決jquery ajax不兼容ie8的問題?這個問題可能是我們日常學習或工作經常見到的,希望通過這個文章能讓大家收獲頗深,下面是小編給大家帶來的參考內容,讓我們一起來看看吧!

jquery ajax不兼容ie8的解決辦法:首先打開相應的代碼文件;然后使用JSON格式請求數據,其代碼語句如“{foo:["bar1", "bar2"]}”。

關于jQuery的AJAX不兼容IE的解決辦法

在使用jQuery的AJAX:get方法去檢測數據是否存在時,會發現IE會出現不兼容的情況。

用AJAX:post方法時,使用Chrome/FireFox/IE均能出現正確的結果,但是在使用AJAX:get方法時,IE卻不能返回正確的結果。

難道是數據超出了get方法的限制的長度,這個也不可能,我總共才傳了一點點數據。排除。

網上一些網友說是IE緩存的問題,在請求數據后邊加上隨機數就行,比如加上時間數new Date().getTime()。

先前的代碼中我已經添加了隨機數,用的是“Math.random()”也不行。難道用時間比較靠譜?

那就改成獲取時間試試,在參數后加“new Date().getTime()”后反復測試還是不行,真是百思不得其解!這個錯誤也排除了。

反復查看手冊后發現請求的數據格式還是有一種JSON格式,如{foo:["bar1", "bar2"]} ,然后就按照這種格式書寫,還真的返回了正確的查詢結果。真不知道IE還有這點要求。(完)

先前的格式:

type: "get",
data: "bid="+my_bid+"&name_cn="+name_cn+"&timeStamp="+new Date().getTime(),

改進后格式:

type: "get",
data: {'bid':my_bid,'name_cn':name_cn,'timeStamp':new Date().getTime()},

在jQuery手冊中是這樣描述的:

data Object,String

發送到服務器的數據。將自動轉換為請求字符串格式。GET 請求中將附加在 URL 后。

查看 processData 選項說明以禁止此自動轉換。必須為 Key/Value 格式。

如果為數組,jQuery 將自動為不同值對應同一個名稱。如 {foo:["bar1", "bar2"]} 轉換為 "&foo=bar1&foo=bar2"。

代碼片段:

var siteUrl="http://blog.sina.com.cn/cnwyt"; 
jQuery.ajax({
type: "get",
url: siteUrl+"cosmetics/product/ajax_check?",
//data: "bid="+my_bid+"&name_cn="+name_cn+"&timeStamp=" + new Date().getTime(),
data: {'bid':my_bid,'name_cn':name_cn,'timeStamp':new Date().getTime()},
dataType: 'json',
error: function (err) { alert('網絡故障,請與管理員聯系!') },
success: function (message) {
if(message!=false){
//ture的代碼
}else{
//false的代碼
}
});

感謝各位看完上述內容,你們對“怎么解決jquery ajax不兼容ie8的問題”這篇文章大概了解了嗎?希望文章的內容對大家有所幫助,如果想了解更多相關文章內容,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女