首頁 >web前端 >js教程 >如何解決jquery ajax亂碼問題

如何解決jquery ajax亂碼問題

藏色散人
藏色散人原創
2020-11-23 10:35:102262瀏覽

jquery ajax亂碼的解決方法就是在檔案頭加上編碼說明「header("Content-type:text/html;charset:gbk");」即可。

如何解決jquery ajax亂碼問題

推薦:《jquery影片教學

本教學操作環境:windows7系統、jquery3.5&&ajax2.0版,此方法適用於所有品牌電腦。

jQuery AJAX中文亂碼處理

最近工作中用jQuery ajax傳回出現亂碼,用的Notepad 編輯器,當JS部分傳遞中文時,另一頁接收的話會出現亂碼,在網路上找了很多方法,基本上沒有很好的解決。

頁面用GB2312編碼,JS部分得到中文字元:var playerName=$('#playerName').val(); 可以這樣處理:

在ajax程式碼部分:

$.ajax({
   url:   'getName.php',
   type:  'GET',
   cache: false,
   data:{
     'playerName':   encodeURIComponent(playerName)//解决问题的关键点
   },
   success:function(response){
     ……
   }
});

   這裡要注意的是jQuery的ajax中處理中文是UTF-8格式,在另一個頁面可以這樣處理:在文件頭部加上

header("Content-type:text/ html;charset:gbk");這裡的gbk可以處理繁體和簡體(工作需要^_^),接收name時:

   $playerName=urldecode($_GET['playerName']);
   $playerName=iconv('utf-8','gbk',$playerName);

   當然,我的編輯器NotePad 預設編碼是ANSI格式的,這個沒多大影響~~。

   前一周我還準備放棄Notepad ,改用Zend來開發,用了一周之後,才發現還是我的Notepad 好,怎麼感覺有點「老婆還是第一任的好呢。」有點小邪惡^^.

   對了,上面jquery中ajax使設定了cache:false,這個針對IE是必須要加的,不然用了ajax,資料還是以前的,沒變,IE快取太邪惡了,親愛的firefox就不會出現這種情況^^.

   還是那句話,jquery簡直太強大了!

以上是如何解決jquery ajax亂碼問題的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn