实现一个功能需要把一个中文词语编码后拼到百度的URL中,在新窗口打开,实现搜索,需要一个类似与PHP中的URlencode的功能,找了好久都没找到。escape、encodeURI、encodeURIComponent都不行。

<script language="vbscript">
Function str2asc(strstr)
str2asc = hex(asc(strstr))
End Function
Function asc2str(ascasc)
asc2str = chr(ascasc)
End Function
</script>
<script language="javascript" type="text/javascript">
function UrlEncode(str){
   var ret="";
   var strSpecial="!\"#$%&'()*+,/:;<=>?[]^`{|}~%";
   for(var i=0;i<str.length;i++){
   var chr = str.charAt(i);
     var c=str2asc(chr);
     if(parseInt("0x"+c) > 0x7f){
       ret+="%"+c.slice(0,2)+"%"+c.slice(-2);
     }else{
       if(chr==" ")
         ret+="+";
       else if(strSpecial.indexOf(chr)!=-1)
         ret+="%"+c.toString(16);
       else
         ret+=chr;
     }
   }
   return ret;
}
</script>

用这样的办法调用:

<script language="javascript" type="text/javascript">
alert(UrlEncode("人"));
</script>

相关文章:

  • 2021-09-20
  • 2022-12-23
  • 2021-05-17
  • 2021-09-05
  • 2022-12-23
  • 2022-12-23
  • 2021-11-27
  • 2021-10-26
猜你喜欢
  • 2021-08-31
  • 2022-12-23
  • 2022-03-06
  • 2021-10-30
  • 2021-11-19
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案