后台是java。

解决方案 »

  1.   


    String str = "%2C";   //escape(",")的值是%2C
    str = java.net.URLDecoder.decode(str,"utf-8");
    System.out.println(str);
      

  2.   

    use escape to encode and decode with unescape.
      

  3.   

    在jsp中这样就可以啦那个是url编码
    String str = "%2C";   //escape(",")的值是%2C
    str = java.net.URLDecoder.decode(str,"utf-8");
    out.println(str);
      

  4.   

    通过request.getParameter取得,然后照我写的就OK了不过好像servlet里面会自己帮转好的,如果中文的话,有时候会取到乱码,要设置一下编码的
      

  5.   

    to varlj:
    通过request.getParameter得出的值为null,根本就不能用你那方法呀?
      

  6.   

    主要用于,url传参有中文的情况。如果不编码,后台得到的参数会乱码。
    escape 和unescape是配套的。。js函数后台则用decode,encode
      

  7.   

    to varlj:
    老大,你试过吗?
    把下面的代码拷贝到t.jsp文件,你试一试<%@page contentType="text/html" pageEncoding="gb2312"%>
    <input type=button onclick='test()'>
    <script>
    function test(){
    location="t.jsp?p="+escape("测试");
    }
    </script>
    <%
    String s=request.getParameter("p");
    System.out.println(s);
    %>
      

  8.   

    String str = "%2C";   //escape(",")的值是%2C
    str = java.net.URLDecoder.decode(str,"utf-8");
    System.out.println(str);
    escape的说明:
    escape 方法 
    对 String 对象编码以便它们能在所有计算机上可读, escape(charString) 必选项 charstring 参数是要编码的任意 String 对象或文字。 说明 
    escape 方法返回一个包含了 charstring 内容的字符串值( Unicode 格式)。所有空格、标点、重音符号以及其他非 ASCII 字符都用 %xx 编码代替,其中 xx 等于表示该字符的十六进制数。例如,空格返回的是 "%20" 。 字符值大于 255 的以 %uxxxx 格式存储。 注意  escape 方法不能够用来对统一资源标示码 (URI) 进行编码。对其编码应使用 encodeURI 和encodeURIComponent 方法。 
      

  9.   

    我就测试了几个英文字符是没问题,试了下中文还真有异常,不好意思
    编码我一直用encodeURIComponent的