jquery ajax乱码的解决办法就是在文件头部加上编码说明“header("Content-type:text/html;charset:gbk");”即可。
推荐:《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中文网其他相关文章!