如题举例。我通过url传递一个“xx路6#2#501”如参数作为查询功能。但是页面获取这个参数只取得了“xx路6”,后面的取不到了。估计是因为锚的原因。有什么办法可以解决吗?

解决方案 »

  1.   

    UrlEncode() 和 UrlDecode() 方法。
      

  2.   

    // 编码:
    str = System.Web.HttpUtility.UrlEncode(str);// 解码:
    str = System.Web.HttpUtility.UrlDecode(str);
      

  3.   

           string a = "xx路6#2#501";
           Response.Redirect("xxx.aspx?bl=" + HttpUtility.UrlEncode(a));接受一搬不需要解码!!
      

  4.   


    我是利用js中的encodeURI()处理的“xx路6#2#501”然后传递的。获取直接利用Request.QueryString获取是什么问题呢?望指教
      

  5.   

    如果是在网页编程中,继承了 Page 类,也可以用非静态的方法:System.Web.HttpServerUtility.UrlEncode() 和 UrlDecode():str = Server.UrlEncode(str); // 编码
    str = Server.UrlDecode(str); // 解码
      

  6.   

    如果是后台处理的话可以采用Server.UrlDecode()和Server.UrlEncode。如果是在客户端js中可以采用
    href=encodeURI("ghrRespondAndOrg.aspx?OrgCondition="+ encodeURIComponent(strResult));
    strResult就是你的"xx路6#2#501”
    接收的话就用Request.QueryString["OrgCondition"].
    试试看可不可以!
      

  7.   

    后台处理的我知道。楼上正解!原来encodeURI只是编码部分字符!给分了