不过对于#号,&符等这个函数不提供编码,需要自己写String.prototype.replaceURL = function()
{
    var str = this;
    str = str.replace(/%/g,"%25");
    str = str.replace(/&/g,"%26");
    str = str.replace(/=/g,"%3d");
    str = str.replace(/#/g,"%23");
    return str;
}

解决方案 »

  1.   

    function URLencode(sStr) {
        return escape(sStr).replace(/\+/g, '%2B').replace(/\"/g,'%22').replace(/\'/g, '%27');
    }
    function URLdecode(psEncodeString) {
      var lsRegExp = /\+/g;
      return unescape(String(psEncodeString).replace(lsRegExp, " ")); 
    }
      

  2.   

    谢谢,已经搞定了(虽然用了vbscript)~~现分享如下:
    <script language="vbscript">
    function urlencoding(vstrin)
        dim i,strreturn,strSpecial
        strSpecial = " <>""#%{}|^~[]`'&?+"
        strreturn = ""
        for i = 1 to len(vstrin)
            thischr = mid(vstrin,i,1)
            if abs(asc(thischr)) < &hff then
                if instr(strSpecial,thischr)>0 then
                    strreturn = strreturn & "%" & hex(asc(thischr))
                else
                    strreturn = strreturn & thischr
                end if
            else
                innercode = asc(thischr)
                if innercode < 0 then
                    innercode = innercode + &h10000
                end if
                hight8 = (innercode  and &hff00)\ &hff
                low8 = innercode and &hff
                strreturn = strreturn & "%" & hex(hight8) &  "%" & hex(low8)
            end if
        next
        urlencoding = strreturn
    end function
    </script>
    感谢大家的热情解答~~
      

  3.   

    推荐使用encodeURIComponent()来对URL进行编码,很好用