昨天做一个ajax的留言本,遇到了很多人都遇到的中文乱码的问题,今天还真把俺难住了半天,不过最后还是发现了一个比较简单的解决办法.
偶后台是用asp做的.
解决办法就是使用js中的escape和unescape两个函数,在asp需要用一个小技巧.
因为asp本身没有escape和unescape两个函数,所以如果在Vb/ASP中需要调用js的这两个函数.
方法如下:
<script language="javascript" runat="server">
function encode(str){
return escape(str);
}
function decode(str){
return unescape(str);
}
</script>
然后就可以在asp中调用encode和decode这两个函数来进行编码和解码了.
这样在使用xmlhttprequest提交数据时使用escape编码,在服务端使用decode解码然后写入数据库.
服务端输出数据时使用encode编码,客户端使用escape解码即可.
这样中文乱码的问题就得到了解决.