首页 > 编程 > .NET > 正文

asp.net下url传递中文的解决方案

2024-07-10 12:40:15
字体:
来源:转载
供稿:网友
1.设置web.config文件。(我不喜欢设置成这样) 
<system.web> 
...... 
<globalization requestEncoding='gb2312' responseEncoding='gb2312' culture='zh-CN' fileEncoding='gb2312' /> 
...... 
</system.web> 
2.传递中文之前,将要传递的中文参数进行编码,在接收时再进行解码。 
>> 进行传递 
string Name = '中文参数'; 
Response.Redirect('B.aspx?Name='+Server.UrlEncode(Name)); 
>> 进行接收 
string Name = Request.QueryString['Name']; 
Response.Write(Server.UrlDecode(Name)); 

3.如果是从 .HTML 文件向 .Aspx 文件进行传递中文参数的话(即不从后台用 Redirect()方法进行 Url 转换)。一样要将传递的中文参数进行编码,在接收时再进行解码。 
>> 进行传递 
<script language='JavaScript'> 
function GoUrl() 

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

</script> 
<body onclick='GoUrl()'> 
>> 进行接收 
string Name = Request.QueryString['Name']; 
Response.Write(Server.UrlDecode(Name)); 

一般来说。设置web.config文件就可以了。但是如果你用 JavaScript 调用 webservice 方法的话(往webservice里面传递中文参数)。设置 web.config 文件好象无效。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表