Ajax中文编码问题
Ajax不支持多种字符集,其默认的字符集是UTF-8,所以在应用Ajax技术的程序中应及时进行编码转换,否则对于程序中出现的中文字符将变成乱码。一般在以下两种情况下将产生乱码。
1.发送路径的参数中包括中文,在服务器端接收参数值时产生乱码
将数据提交到服务器有两种方法:一种是使用GET方法提交;另一种是使用POST方法提交。使用不同的方法提交数据,在服务器端接收参数时解决中文乱码的方法是不同的。具体解决方法如下。
(1)当接收使用GET方法提交的数据时,要将编码转换为GBK或是GB2312。例如:将省份名称的编码转换为GBK的代码如下。
String selProvince = request.getParameter("parProvince"); //获取选择的省份
selProvince = new String(selProvince.getBytes("ISO-8859-1"),"GBK");
(2)由于应用POST方法提交数据时,默认的字符编码是UTF-8,所以当接收使用POST方法提交的数据时,要将编码转换为UTF-8。例如,将用户名的编码转换为UTF-8的代码如下。
String username = request.getParameter("user"); //获取用户名
username = new String(username.getBytes("ISO-8859-1"),"UTF-8");
2.返回到responseText或responseXML的值中包含中文时产生乱码
由于Ajax在接收responseText或responseXML的值时是按照UTF-8的编码格式进行解码的,所以如果服务器端传递的数据不是UTF-8格式,在接收responseText或responseXML的值时就可能产生乱码。解决的方法是保证从服务器端传递的数据采用UTF-8的编码格式。
摘自:Java Web开发实战宝典 11.5.4 中文编码问题
分享到:
相关推荐
Ajax中文乱码问题解决方案
Ajax 中文乱码问题 Ajax 中文乱码问题 Ajax 中文乱码问题
jquery+asp ajax 中文乱码问题解决文档
java认证_Ajax中文乱码问题及解决方法.doc
NULL 博文链接:https://zmx.iteye.com/blog/643075
JQuery AJAX 中文乱码问题解决,需要的朋友可以参考一下
AJAX中文问题分为两大类: 1)发送路径中的参数有中文,在服务器段接收参数值是乱码 例如: var url=”a.jsp?name=小李”; xmlHTTP.open (“post”,url,true); 解决办法: 利用javascript的提供的escape()或...
ajax中文乱码问题在中文中经常会出现这种问题,其实只要稍加注意就不会出现ajax中文乱码这回事情了,注意前后台编码一致.你用的是中文.而ajax传输数据的时候用的是utf-8 ,还有对ajax get方法时最好escape 或urlcode,...
今天终于解决了AJAX的中文乱码问题,写篇文章来帮助一下有同样问题的朋友们。我的开发环境:XP, eclipse,使用GB18030编码。 当遇到这个问题时,到网上去查了好多文章,提到几种解决方案,如:全站UTF-8编码;请求头...
主要解决在ajax中中文参数传递过程中,服务器接收到中文乱码的问题
解决AJAX中文乱码问题,本人亲测,测试系统WIN2008,其他系统请自行测试。包括源码和说明
GBK编码下jQuery_Ajax中文乱码解决方案
基于jsp后台java解决ajax异步传输中文乱码问题.
Ajax使用POST提交中文乱码问题.docx
ajax提交时,后台接收的参数出现中文乱码的解决方法,
struts中文乱码问题解决详细步骤(两种方法)
针对java web开发方面中文乱码情况的总结,基本各种情况都有了!