复制代码 代码如下: <BR>Function str2asc(strstr) <BR> str2asc = hex(asc(strstr)) <BR>End Function <BR>Function asc2str(ascasc) <BR> asc2str = chr(ascasc) <BR>End Function <BR> 将vbscript函数转成javascript,方便非ie浏览器下使用 复制代码 代码如下: function str2asc(strstr){ return ("0"+strstr.charCodeAt(0).toString(16)).slice(-2); } function asc2str(ascasc){ return String.fromCharCode(ascasc); } 复制代码 代码如下: <BR>/*这里开始时UrlEncode和UrlDecode函数*/ <BR>function UrlEncode(str){ <BR> var ret=""; <BR> var strSpecial="!\"#$%&'()*+,/:;<=>?[]^`{|}~%"; <BR> var tt= ""; <br><br> for(var i=0;i<str.length;i++){ <BR> var chr = str.charAt(i); <BR> var c=str2asc(chr); <BR> tt += chr+":"+c+"n"; <BR> if(parseInt("0x"+c) > 0x7f){ <BR> ret+="%"+c.slice(0,2)+"%"+c.slice(-2); <BR> }else{ <BR> if(chr==" ") <BR> ret+="+"; <BR> else if(strSpecial.indexOf(chr)!=-1) <BR> ret+="%"+c.toString(16); <BR> else <BR> ret+=chr; <BR> } <BR> } <BR> return ret; <BR>} <BR>function UrlDecode(str){ <BR> var ret=""; <BR> for(var i=0;i<str.length;i++){ <BR> var chr = str.charAt(i); <BR> if(chr == "+"){ <BR> ret+=" "; <BR> }else if(chr=="%"){ <BR> var asc = str.substring(i+1,i+3); <BR> if(parseInt("0x"+asc)>0x7f){ <BR> ret+=asc2str(parseInt("0x"+asc+str.substring(i+4,i+6))); <BR> i+=5; <BR> }else{ <BR> ret+=asc2str(parseInt("0x"+asc)); <BR> i+=2; <BR> } <BR> }else{ <BR> ret+= chr; <BR> } <BR> } <BR> return ret; <BR>} <BR>alert(UrlDecode("%C2%D2%C2%EB")); <BR>