我本无名
菩提本无树,明镜亦非台。本来无一物,何处惹尘埃。
  今天在做一个无刷新判断公司名称,是否重复的时候,发现一个问题就是通过javascript传到asp.net页面的值是乱码。以前没有发现。因为以前做测试时,都是用英文字符进行的测试。今天输入汉字后,发现有这种问题。感觉可能是编码的问题。就上网查了一下。找到一些方法,如下:
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()就可以得到正确的中文了


posted on 2008-01-03 13:16  我本无名  阅读(1229)  评论(0编辑  收藏  举报