ajax乱码解决方案
很多初学ajax的朋友都会遇到ajax乱码的问题,为什么会出现ajax乱码呢?该怎么解决ajax乱码的问题呢?我们是不是要看看ajax原理呢?先别急,我们先看看出现ajax乱码的原因。
很简单,js框架多数是utf-8的,这下明白ajax乱码出现的原因了吧,那我们如何解决ajax乱码呢?两种方法。
一、只改客户端的JS代码,不改服务端代码,默认情况下JS只有读UTF-8时才不会产生ajax乱码:
1、如果服务器端的页面编码是UTF-8,那么客户端就直接用temp1=xmlhttp.responseText接收,就不会产生乱码,因为JS默认情况下是读UTF-8编码的。
2、如果服务器端的页面编码是gb2312,那么客户端就要先用temp1=xmlhttp.responsebody接收服务端返回的二进制内容,然后再用一个函数把二进制转成UTF-8编码,这样客户端的JS读到的内容就不会产生ajax乱码了。
二、修改服务端代码,服务端指定客户端以某种编码来读页面。
1、在JSP代码中:response.setHeader(“Charset”,”GB2312″);
2、在php代码中:header(“Content-Type:text/html;charset=GB2312″);
3、在ASP代码中:Response.Charset(“GB2312″)
解决方法很简单,如果不想遇到ajax乱码的问题,直接用utf-8就好了。126家具材料网