asp自动会还原
直接 Response.Write Request("word")

解决方案 »

  1.   

    使用uncode吧,查书吧有个转码的方法
      

  2.   

    js取还是用asp<script>
    var str=<%= Request("word") %>;//接着你就可以在js中调用str了</script>
      

  3.   

    ASP一般会自动还原的
    除非你做了什么设置,最好把你代码都弄出来!
      

  4.   

    IE...<script language="vbscript">
    function urldecode(encodestr) 
    Dim newstr,havechar,lastchar,i,char_c,next_1_c,next_1_Num
    newstr="" 
    havechar=false 
    lastchar="" 
    for i=1 to len(encodestr) 
    char_c=mid(encodestr,i,1) 
    if char_c="+" then 
    newstr=newstr & " " 
    elseif char_c="%" then 
    next_1_c=mid(encodestr,i+1,2) 
    next_1_num=cint("&H" & next_1_c)
    if havechar then 
    havechar=false 
    newstr=newstr & chr(cint("&H" & lastchar & next_1_c))
    else
    if abs(next_1_num)<=127 then 
    newstr=newstr & chr(next_1_num)
    else
    havechar = true
    lastchar = next_1_c
    end if 
    end if 
    i=i+2 
    else 
    newstr=newstr & char_c 
    end if 
    next 
    urldecode=newstr 
    end function
    </script>
    <script type="text/javascript">
    var strng = '%B9%C9%C6%B1';
    window.execScript('VBStr = ' + strng.replace(/%([^%]{2})%([^%]{2})/g, "CHR(&H$1$2)&").slice(0,-1), "VBS");
    //或者:
    //window.execScript('VBStr = urldecode("' + strng + '")', "VBS");
    alert(VBStr);
    </script>
      

  5.   

    我发的就是JS,请仔细看回复
    IE里JS有execScript方法。可以利用VBS的CHR方法
    而给出了那段VBS,基本可以不用因为只需要CHR方法,其它的处理完全可以用JS实现。。只不过为了直接展示没写处理而已。
      

  6.   


    <script type="text/javascript">
    var strng = '%B9%C9%C6%B1';
    var callback = function () {
    alert(arguments[0]);
    };
    window.execScript('callback(' + strng.replace(/%([^%]{2})%([^%]{2})/g, "CHR(&H$1$2)&").slice(0,-1) + ')', "VBS");
    </script>换个方法
      

  7.   


    var Request = function(arg){
    var ws = location.search.substring(1, location.search.length);
    var arrReturn = new Array();
    var strReturn = new String(); if (ws != ""){
    var val = ws.split("&");
    for (i=0 ; i<val.length ; i++){
    if (arg == val[i].split("=")[0]){
    strReturn = val[i].split("=")[1];
    break;
    }
    else{
    arrReturn.push(val[i].split("=")[1]);
    }
    }
    }
    return (typeof arg == 'undefined')?arrReturn:strReturn;
    };
      

  8.   

    楼主要GB2312的转码,还要js的,比较麻烦,网上有个代码,用码表查的,很长,我就不贴了,自己去下
    www.blueidea.com/user/qswh/qswhU2GB.js
      

  9.   

    同意楼上还是提交前escape,得到用unescape,简洁方便
      

  10.   

    感谢muxrwc 你的window.execScript('VBStr = ' + strng.replace(/%([^%]{2})%([^%]{2})/g, "CHR(&H$1$2)&").slice(0,-1), "VBS");这个方法中如
    var strng = '%B9%C9%C6%B1';
    中加英文的话怎么个修改能正确运行?
    如var strng = 'ADA704%B9%C9%C6%B1';
    就运行不了了马上解贴!
      

  11.   

    我没判断.
    因为我那个式子只是针对双ASCII的(中文)的字符.
    你可以参考我从网上找的那个decodeURL,里的方法.
    写个类似的JS方法,转换CHR的时候就用IE ONLY 的execScript callback VBS的CHR函数就行了...