jquery ajax post提交數(shù)據(jù)亂碼
來源:易賢網(wǎng) 閱讀:799 次 日期:2015-05-08 14:59:52
溫馨提示:易賢網(wǎng)小編為您整理了“jquery ajax post提交數(shù)據(jù)亂碼”,方便廣大網(wǎng)友查閱!

在用jquery處理html5的應(yīng)用的時候,一直在firefox下測試都正常,用戶用pad訪問的時候說有亂碼,

自己試驗了下果然,后發(fā)現(xiàn)chrome和ie內(nèi)核下都是有此問題,此問題設(shè)置了頁面屬性為utf-8時候,只有firefox是傳的charset=utf-8的頭文件

chrome和ie都沒有指定,所以出現(xiàn)亂碼問題.

解決方法:

$.ajaxSetup({

contentType: "application/x-www-form-urlencoded; charset=utf-8"

});

$.post("test.php", { name: "i5a6", time: "2pm" },

function(data){

process(data);

}, "json");

或者使用:

$.ajax({

,

type:"POST",

data:data,

contentType:"application/x-www-form-urlencoded; charset=utf-8",

dataType:"json",

success: function(){

...

}

})

推薦使用第一種,不過也是根據(jù)自己的實際情況看的,有人推薦用 encodeURIComponent 做字符轉(zhuǎn)換

總結(jié)一下ajax 提交數(shù)據(jù)亂碼一些經(jīng)驗

為了避免亂碼,可以做到以下幾步

解決方法

1,保持編碼的統(tǒng)一,包括文件編碼,數(shù)據(jù)庫編碼,網(wǎng)頁content-type編碼

檢查一下<meta http-equiv=”content-type” content=”text/html; charset=UTF-8″ />

建議中文都是用UTF-8,使用gbk/gb2312有可能會出現(xiàn)亂碼

2,使用post來發(fā)送而不是get

get方法是會通過鏈接來傳遞參數(shù),而且會自動urlEncode(編碼),而各個瀏覽器編碼的方式可能不太一樣。使用post可以避免這種情況。

3,通過在js前端escape編碼再發(fā)送,然后后臺解碼取得數(shù)據(jù)

這些可以在網(wǎng)上搜索

4,在全局設(shè)定contentType,指定編碼

因為jquery ajax是使用utf-8來編碼發(fā)送數(shù)據(jù)的,ie在發(fā)送時卻沒加上charset=utf-8,從而導致亂碼(IE默認使用iso-8859-1編碼)

$.ajaxSetup({

contentType: "application/x-www-form-urlencoded; charset=utf-8"

更多信息請查看IT技術(shù)專欄

更多信息請查看網(wǎng)頁制作
易賢網(wǎng)手機網(wǎng)站地址:jquery ajax post提交數(shù)據(jù)亂碼
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復僅供參考,敬請考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇剩?/div>

2025國考·省考課程試聽報名

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 加入群交流 | 手機站點 | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號:hfpxwx
咨詢QQ:526150442(9:00—18:00)版權(quán)所有:易賢網(wǎng)