六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 19|回复: 0

解决AJAX传送中文会导致乱码的问题

[复制链接]

升级  24%

20

主题

20

主题

20

主题

秀才

Rank: 2

积分
86
 楼主| 发表于 2013-1-29 10:37:09 | 显示全部楼层 |阅读模式
使用POST的时候:
//如果传送参数是直接赋予的,就会产生乱码!
http_request.open("POST",url,true);
http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded;charset=gb2312');
http_request.send("action="+strName+"&val="+val);   //如果val的值为中文,则产生乱码
//解决方法很简单:使用javascript中的escape(string) 函数
http_request.open("POST",url,true);
http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded;charset=gb2312');
http_request.send("action="+strName+"&val="+escape(val));   //val的值为中文不会产生乱码



使用GET的时候:
1、在html标签meta中加入content="text/html; charset=gb2312" 确认浏览器解析时的编码.
2、确认服务器层面上的编码方式
PHP:header('Content-Type:text/html;charset=GB2312');
ASP:Response.Charset("GB2312")或者Response.Charset= "gb2312"
JSP:response.setHeader("Charset","GB2312");
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表