http://www.cnblogs.com/vagerent/articles/1279259.htmlLZ看看这个吧

解决方案 »

  1.   

    多谢楼上,
    但不知道var DecodeURI = function(zipStr,isCusEncode){
    的两个参数分别是什么?
      

  2.   

    zipStr要转换的字符串isCusEncode转换类型 选择false   true的我也不知道是转乘什么了!呵呵用法
    <script language="javascript">
    document.write("http://www.fanchuanbook.com/search.aspx?q=" + EncodeURI("你骄傲",false));
    </script>
      

  3.   

    好象不行,
    c#的Server.UrlEncode("成都") 是 B3%C9%B6%BC

    js的EncodeURI("成都",false) 是 %E6%88%90%E9%83%BD所以DecodeURI("B3%C9%B6%BC",false)错误,得不到"成都"
      

  4.   

    alert('<%= Server.UrlDecode("www.b.com/about.html?%E6%88%90%E9%83%BD ") %>');
    我这里测Server.UrlEncode("成都")也是%E6%88%90%E9%83%BD哦
      

  5.   

    这样吧, URI和URL不一样的, 你用WIN32 api, URLC 开头的具体我忘了, 你查一下MSDN.
      

  6.   


    因为JS用的是Unicode的编码格式
    http://topic.csdn.net/t/20060608/10/4808378.html你看下这个吧
      

  7.   

    你这个%B3%C9%B6%BC是怎么编码过来的,编码的有问题,所以decodeURIComponent和decodeURI都解不了码
      

  8.   

    javascript:alert(decodeURI('%E6%88%90%E9%83%BD'));javascript:alert(encodeURI('成都'));没错阿,,,注意大小写(encodeURI / decodeURI)...
      

  9.   

    你这样吧,用escape函数:<script language="javascript">
    var str="成都";
    window.loaction.href='http://www.fanchuanbook.com/search.aspx?superStr='+escape(str);
    </script>
    .cs里面接收时用:string str=Request.QueryString["superStr"].ToString();
    这样中文就没什么问题了。     LZ试试看
      

  10.   

    俄...明白楼主的意思了~~~~看看这个你能得到点启示:
    http://www.baidu.com/s?wd=%B3%C9%B6%BC
    http://64.233.161.104/search?hl=zh-CN&q=%E6%88%90%E9%83%BD在百度的源文件里有一行"charset=gb2312";再看google的是"charset=UTF-8",所以,都是搜的"成都",但是百度的gb编码页面将URL里的汉字转换为其ANSII编码的16进制值,而google的页面是utf8编码的,所以URL中的汉字也转换成其UNICODE编码的十六进制值,javascript里那个xcodeURI函数是以16进制unicode为转换标准的...所以不能解码你说的这个网址....至于具体怎么转换就不知道了...笨的办法是给每个汉字的ANSII十进制值和汉字对应做成对照表(比如就在百度里搜所有汉字,然后把wd后面的部分截取出来去掉"%"之后四个字一分割-___-!!)...聪明的办法我想不到....