ASP.NET, IE6下URL中文乱码问题 ASP.NET程序,当URL后缀包含奇数个中文字符

来源:互联网 发布:端口怎么复用 编辑:程序博客网 时间:2024/06/07 05:59

ASP.NET程序,当URL后缀包含奇数个中文字符(如:/Index.aspx?wd=团团转),会出现乱码情况。解决办法有三:


方法一、设置web.config文件并改网页meta编码。
<system.web>
    <globalization requestEncoding="gb2312" responseEncoding="gb2312" culture="zh-CN" uiCulture="zh-CN" responseHeaderEncoding="gb2312" fileEncoding="gb2312" />
</system.web>

并将所有.aspx文件头里编码写为:
<meta http-equiv="Content-Type" content="text/html;charset=gb2312" />

方法二、传递中文之前,将要传递的中文参数进行编码,在接收时再进行解码。
>> 传递前编码
Response.Redirect("B.aspx?Name="+Server.UrlEncode("中文参数"));

>> 接收时解码
Response.Write(Server.UrlDecode(Request["Name"]));

方法三、如果是使用javascript跳转到另一页,得使用escape将要传递的中文参数进行编码,在接收时再进行解码。
>> 传递前编码
<script language="JavaScript">
function GoUrl()
{
var Name = "中文参数";
location.href="http://ayue05.blog.163.com/blog/B.aspx?Name="+escape(Name) ;
}
<body onclick="GoUrl()">

>> 接收时解码
Response.Write(Server.UrlDecode(Request["Name"])) ;
0 0
原创粉丝点击