jquery ajax亂碼的解決辦法就是在檔案頭部加上編碼說明「header("Content-type:text/html;charset:gbk");」即可。
推薦:《》
該方法適用於所有品牌的電腦。
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亂碼問題的詳細內容,更多請關注TW511.COM其它相關文章!