两个页面都是UTF-8的,第一个页链接上有传递中文过去,第二个页面负责接收,收完后发现乱码,如果全部转成GB2312就没问题,
用Request.QueryString[]获取的就是其中的参数,不要直接传递汉字就好。。。
所以传递的时候比如说带个英文或者什么的一起传递,接收时除去英文就可以正常传递了。(此句似乎不正确,呵呵,传递好像还是有问题)
还有一个方法是在传递前将中文转码,然后在接受时转回来,应该也可以
UrlEncode
将字符串以 URL 编码。
ASP中的用法:
Server.URLEncode("内容")
例:
<%
response.write Server.UrlEncode("七七IT中国")
%>
PHP中的用法:
urlencode("内容");
例:
<?
echo urlencode("七七IT中国");
?>
JSP中的用法:
URLEncoder.encode("七七IT中国");
<%
java.net.URLEncoder.encode("七七IT中国");
%>
UrlDecode
对字符串进行URL解码。
本函数对字符串进行URL解码。例如通过urlencode编码后的字符串,可通过UrlDecode进行解码。
对Url路径加码的函数是
UrlEncode 用法相反,和UrlDecode是一致对应的.
但是在ASP下加码成功,但是解码失败,好像没有解码这个语句UrlDecode !
asp 里面没有urldecode函数,好象aspx里有吧
JS的编码解码是
可以使用 unescape() 对 escape() 编码的字符串进行解码。
<script type="text/javascript">
document.write(escape("Visit W3School!") + "<br />")
</script>
我自己写的
<script type="text/javascript">
var pinm=document.getElementById("pinm").value; 获取PINM,但是好像没写对
var pin=escape(pinm); 编码时括号内部PINM不知道该怎么表示,要加双引吗?
document.write (pinm); 这句应该对的
</script>在GB2312下,中文传递没有问题!
[此贴子已经被作者于2010-8-13 23:31:11编辑过]