post与get在ajax中文乱码问题解决方法ajax是越来越流行了,不过在使用ajax的时间,最经常遇到的问题就是中文乱码了.这是因为ajax更喜欢UTF-8编码的原因.当然,如果你的网站全是用Utf-8编码来写的话,可能不会遇到此问题.下面来说说笔者解决
ajax中文乱码的方法:
首先说一下get方式,这个比较简单,方法如下:
解决一:将文件直接另存为UTF-8编码格式
下面的二,三,四种方法,是将代码加入到要加载的文件顶部的
解决二:如是ASP,: Response.Charset("GB2312")
解决三:如是PHP:header("Content-Type:text/html;charset=GB2312");
解决四:如是JSP:response.setHeader("Charset","GB2312");
post提交方式的解决方式,目前我只试过asp的方法:
首页在提交的ajax脚本中,使用 encodeURIComponent 与 escape 转换一下要提交的数据,如
var name=encodeURIComponent(escape($("name").value))
在服务器获取数据时再用 Unescape 转换一次(这方法仅限于asp),如
name=Unescape(Request.Form("name"))