首頁  >  文章  >  web前端  >  jquery ajax post提交資料亂碼_jquery

jquery ajax post提交資料亂碼_jquery

WBOY
WBOY原創
2016-05-16 17:17:21915瀏覽

在用jquery處理html5的應用程式的時候,一直在firefox下測試都正常,用戶用pad訪問的時候說有亂碼,
自己試驗了下果然,後發現chrome和ie內核下都是有此問題,此問題設定了頁面屬性為utf-8時候,只有firefox是傳的charset=utf-8的頭檔
chrome和ie都沒有指定,所以出現亂碼問題.
解決方法:

複製程式碼 程式碼如下:

$.ajaxSetup({


$.ajaxSetup({


$. -form-urlencoded; charset=utf-8"
});
$.post("test.php", { name: "i5a6", time: "2pm" },
   function(data ){
     process(data);
   }, "json"); 或使用:
或使用:



或使用:




程式碼如下:


$.ajax({
  url:url,  type:"POST",
  data:
  contentType:"application/x-www-form-urlencoded; charset=utf-8",
  dataType:"json",
  success: function(){
    ...
🎜>})
 

推薦使用第一種,不過也是根據自己的實際情況看的,有人推薦用encodeURIComponent 做字符轉換
總結一下ajax 提交數據亂碼一些經驗
為了避免亂碼,可以做到以下幾步
解決方法
1,保持編碼的統一,包括文件編碼,資料庫編碼,網頁content-type編碼因為jquery ajax是使用utf- 8來編碼傳送資料的,ie在傳送時卻沒加上charset=utf-8,因而導致亂碼(IE預設使用iso-8859-1編碼)




複製程式碼
程式碼如下:$.ajaxSetup({ contentType: "application/x-www-form-urlencoded; charset=utf-8" }); 
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn