关于在AJAX中GET回的ResponseText中文乱码的最简解决办法
用AJAX来GET回一个页面时,RESPONSETEXT里面的中文多半会出现乱码,这是因为xmlhttp在处理返回的responseText的时候,是把resposeBody按UTF-8编码进解码考形成的,如果服务器送出的确实是UTF-8的数据流的时候汉字会正确显示,而送出了GBK编码流的时候就乱了。解决的办法就是在送出的流里面加一个HEADER,指明送出的是什么编码流,这样XMLHTTP就不会乱搞了。
PHP:header('Content-Type:text/html;charset=GB2312');
ASP:Response.Charset("GB2312")
JSP:response.setHeader("Charset","GB2312");
这个小问题居然困挠一家人好长时间!
问题点数:0、回复次数:9Top
1 楼you34(蚊子)回复于 2006-03-31 15:09:49 得分 0
我jsp加了:response.setHeader("Charset","GB2312");还是乱码........Top
2 楼you34(蚊子)回复于 2006-03-31 15:10:36 得分 0
post参数到servlet里面request.getParamter(XXX)也是乱码.......
Top
3 楼luoying_81(花生米)回复于 2006-04-03 17:28:03 得分 0
我也是乱码,只不过我把header('Content-Type:text/html;charset=UTF-8');
就不是乱码了,为什么?
Top
4 楼Scarroot(每天一贴,把分用完.)回复于 2006-04-04 13:46:16 得分 0
markTop
5 楼yincai(淫才)回复于 2006-04-13 16:31:19 得分 0
header('Content-Type:text/html;charset=UTF-8');
加在什么位置?Top
6 楼sungcong(三松)回复于 2006-04-18 16:29:58 得分 0
在ASP中,Response.Charset("GB2312")这句话还出错呀Top
7 楼DiverSoft(採珠人)回复于 2006-04-19 12:25:57 得分 0
upTop
8 楼frogJ(青蛙王子J)回复于 2006-04-19 16:06:22 得分 0
在ASP里 加入这3句 保证没问题
<%@ CODEPAGE=65001 %>
<% Response.CodePage=65001%>
<% Response.Charset="UTF-8" %>
上面是UTF-8的 ,注意源文件也要保存为utf-8
<%@ CODEPAGE=GB2312 %>
<% Response.CodePage=GB2312 %>
<% Response.Charset="GB2312 " %>
GB2312 了Top
9 楼Sennet(Asen)回复于 2006-04-24 15:57:05 得分 0
我也碰过这个问题,请问在Asp.Net中如何处理啊????Top




