页面出现乱码,URL传值乱码

1. 页面默认为UTF-8   

2.  编码有2个方面

传输编码和客户端解码

当编码和解码相同的时候就显示正常

当编码和解码不同的时候就会出问题

3.  如果你在web.config中加入

<globalization requestEncoding="gb2312" responseEncoding="gb2312" fileEncoding="gb2312"/>

这样可以解决 URL传汉字乱码的问题,但在其它页页可能出现乱码。  所以最好不要在web.config中加入上面的语句.

如: // String strName="中国";

//       Response.Redirect("PrivRoleQuery.aspx?SendVal="+strName);

//       string strSendVal = Request.QueryString["SendVal"]; 

解决办法: 

传: 

String strRoleNameVal="中国";

string strName= Server.UrlEncode(strRoleNameVal);

Response.Redirect("PrivRoleQuery.aspx?SendVal="+strName);

 接:

string strSendVal =Server.UrlDecode(Request.QueryString["SendVal"]);

4.另一种是在脚本中传.

传:

< script  language ="JavaScript" >  
function  GoUrl() 

var  Name  =   " 中文参数 "
location.href 
=   " B.aspx?Name= " + escape(Name) ; 

< body onclick = " GoUrl() " >  

接:

string Name = Request.QueryString["Name"]; 
Response.Write(Server.UrlDecode(Name)) ; 
 

 

你可能感兴趣的:(url)