.net页面间传值出现乱码

.net页面间传值出现乱码

.net页面间传值出现乱码,解决方法。

 

传值后URL上如果传的是中文则出现乱码,非中文就正常。

经过研究后,发现有几种办法可以解决,拿出来跟大家分享一下,说的不好还请大家多多指教啊~ 哈哈

 

1、设置web.config文件

在<system.web> </system.web>节点中,加入<globalization requestEncoding="gb2312" responseEncoding="gb2312" culture="zh-CN" fileEncoding="gb2312" /> 。效果如下:

<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()就可以得到正确的中文了

原文地址:https://www.cnblogs.com/xiaopanlyu/p/2568813.html