asp和ajax使用中出现中文乱码怎么办?

最近想在一个asp网站注册页面添加用户名验证系统,但是每次提交的中文用户名都是一些乱码

查看了代码,发现忘记了一个重要的escape加密

javascript中的escape() 函数可对字符串进行编码,这样就可以在所有的计算机上读取该字符串。语法escape(string)参数描述string必需。要被转义或编码的字符串。返回值已编码的 string 的副本。其中某些字符被替换成了十六进制的转义序列。说明该方法不会对 ASCII 字母和数字进行编码,也不会对下面这些 ASCII 标点符号进行编码: – _ . ! ~ * ‘ ( ) 。其他所有的字符都会被转义序列替换。
提示和注释提示:可以使用 unescape() 对 escape() 编码的字符串进行解码。注释:ECMAScript v3 反对使用该方法,应用使用 decodeURI() 和 decodeURIComponent() 替代它。

在本例中,我们将使用 escape() 来编码字符串:
<script type=”text/javascript”>

document.write(escape(“Visit W3School!”) + “<br />”)
document.write(escape(“?!=()#%&”))

</script>
输出:
Visit%20W3School%21
%3F%21%3D%28%29%23%25%26

gb2312的asp网页还是会出现乱码,建议全部调整为UTF-8编码

发表评论

电子邮件地址不会被公开。 必填项已用*标注