“餐”是可以变成 %B2%CD%,这不用质疑。http://www.baidu.com/s?wd=%B2%CD&cl=3

解决方案 »

  1.   

    不对 encodeURI("餐")=%E9%A4%90 
    我是要 "餐"  转成 %B2%CD
      

  2.   

    encodeURI和encodeURIComponent一样的,结果都是 %E9%A4%90 ,这个我都试过了,但不是我要的。不过还是谢谢。
      

  3.   

    encodeURI和encodeURIComponent是转成
    3个字节带标志位的那种unicode
    1110 XXXX 10 XXXXXX 10XXXXXX
    而escape是只有上面XX所对应的那种
    我感觉你那种编码有些不对啊,你的编码B2CD
    这是什么东西啊
    1011 0010 1101 1101
    是不是经过什么处理了?
      

  4.   

    VBS就可以做到:
    Hex(Asc("餐"))
    然后在高位和低位前加上"%"
      

  5.   

    没经过处理。<html>
    <body>
    <form method="get">
    <input type="text" value="餐" name="w"/>
    <input type="submit" value="提交"/>
    </form>
    </body>
    </html>
    将以上代码存成t.htm,点提交,看浏览器地址栏URL就知道了。
      

  6.   

    Hex(Asc("餐"))
    也不行的。Hex(Asc("餐"))=%99%10不是我要的 %B2%CD
      

  7.   

    <html>
    <body>
    <form method="get">
    <input type="text" value="餐" name="w"/>
    <input type="submit" value="提交"/>
    </form>
    </body>
    </html>以上方式能得到 “餐”转成 %B2%CD这个很重要,因为客户端不能使用中文,必须要用就javascript将中文转成类似浏览器的get方式提交转换后的编码方式发送,这样服务器端就不用做特殊处理就能接收。大家有没有遇到跟我同样的问题?
      

  8.   

    不会啊
    可以转的
    <script language=vbscript>
        alert(hex(asc("餐")))
    </script>该方法是求其ASC码,然后加了65536,再求16进制。
    由于这里的是gb2312编码,而javascript中是unicode编码,所以你所说的这个在JS中办不到,不过可以调vbscript中的函数
    <script language=javascript>
        alert(to_HexAsc("餐"))
    </script>
    </script language=vbscript>
         function to_HexAsc(str)
        {
             return hex(asc(str))
         }
    </script>
      

  9.   

    java : java.net.URLEncoder.encode(str,"GBK");
      

  10.   

    不行就是不行,唉。终于找到我想要的但对照码太大了,比我的所有源码加起来都大,不能用。算了,结帖。
    http://dev.csdn.net/develop/article/15/15043.shtm