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

时间:2021-05-28

1.设置web.config文件。(我不喜欢设置成这样)
<system.web>
......
<globalizationrequestEncoding='gb2312'responseEncoding='gb2312'culture='zh-CN'fileEncoding='gb2312'/>
......
</system.web>
2.传递中文之前,将要传递的中文参数进行编码,在接收时再进行解码。
>>进行传递
stringName='中文参数';
Response.Redirect('B.aspx?Name='+Server.UrlEncode(Name));
>>进行接收
stringName=Request.QueryString['Name'];
Response.Write(Server.UrlDecode(Name));

3.如果是从.HTML文件向.Aspx文件进行传递中文参数的话(即不从后台用Redirect()方法进行Url转换)。一样要将传递的中文参数进行编码,在接收时再进行解码。
>>进行传递
<scriptlanguage='JavaScript'>
functionGoUrl()
{
varName='中文参数';
location.href='B.aspx?Name='+escape(Name);
}
</script>
<bodyonclick='GoUrl()'>
>>进行接收
stringName=Request.QueryString['Name'];
Response.Write(Server.UrlDecode(Name));

一般来说。设置web.config文件就可以了。但是如果你用JavaScript调用webservice方法的话(往webservice里面传递中文参数)。设置web.config文件好象无效。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章