服务器端为简体系统。但客户端为繁体操作系统的时候就出问题了。
在脚本里这样写,在简体的系统下可以正常,但在客户端为繁体的时候,取到的action的值就不行了(乱码)。不知道为什么?
window.open("test.aspx?action=测试中");
打开的test.aspx页面里 用Request.QueryString["action"]取得的值却是乱码。找了半天也没有找出原因。
尝试了以下的方法,但仍无效:
1、设置Web.Config的<globalization requestEncoding="gb2312" responseEncoding="gb2312"/>
2、设置页面的属性:<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
[8月15日] 总算解决了。
解决思路: 在Open之前先用 Server.UrlEncode("测试中");进行编码后。
在Request的时候再用 Server.UrlDecode(Request["action"])。
但是如果在JS里调用 Server.UrlDecode还是没有办法的,所以找到了一个JS写的UrlDecode。不过文件有点大就是了。但还是算解决了。
要引用一个脚本:
Unicode和GB的转换库和UrlEncode和getSpell函数,请下载
http://www.blueidea.com/user/qswh/qswhU2GB.js