asp.net url传递后地址栏乱码(中文超过两个汉字)

风景旧曾谙,阳春三月归;烟云十年后,又见江南花。夜晚的这一刻,我独赏风景。有很多人觉得,一个人旅行好无聊。可我却偏偏喜欢一个人。

编码编好的url是正确的,可传到另一个页面 就会出错,在地址栏就已经乱码了
1.设置web.config文件

 
<system.web>
<globalization requestEncoding="gb2312" responseEncoding="gb2312" culture="zh-CN" fileEncoding="gb2312" />
</system.web>

2.asp.net对asp.net页面传值
进行传递
string Name = "中文参数";
Response.Redirect("B.aspx?Name="+Server.UrlEncode(Name));
进行接收
string Name = Request.QueryString["Name"];
Response.Write(Server.UrlDecode(Name));
3.javascript对asp.net页面传值
 
<script language="javascript">
function escode()
{
location.href ="B.aspx?Name="+escape(Name);
}
</script>

在asp.net页面中正常使用Request.QueryString("Name").toString()就可以得到正确的中文了

本文asp.net url传递后地址栏乱码(中文超过两个汉字)到此结束。梦想需要反思,但更需要坚持、小编再次感谢大家对我们的支持!

您可能有感兴趣的文章
ASP.NET轻量级MVC框架Nancy的基本用法

使用grpcui测试ASP.NET core的gRPC服务

ASP.NET Core中的对象池介绍

asp.net中MVC的处理流程详解

ASP.NET Core的日志系统介绍