查看文章 |
在vbscript中实现javascript的escape函数对字符串进行编/解码
2008-04-11 下午 09:52
这几天学习了一下传说中的ajax,先不说别的,在用ajax的XMLHttpRequest对象向服务器端传送数据时,出现了一个让我很郁闷的问题.由于要传送中文数据,明文传送会出现乱码,网上的很多人说发送数据前先发送http头,设置好传送数据的编码,但是我整了半天没发现这好使,于是就寻求其他解决方法,接着看到很多人是在数据发送前将字符串用javascript的escape函数进行处理,然后服务器端处理程序再进行解码,然后又出现问题了,我学的是asp(Active Server Page),习惯用vbscript编写处理程序,但是vbscript没有如能实现javascript中escape函数功能的函数,后来在网上找了一下,有一位前辈写了类似javascript中escape和unescape两个函数的函数,帮我解决了这个问题,不胜感激,函数如下: 'escape时不变的7个符号: *(42) +(43) -(45) .(46) /(47) @(64) _(95) Function dim s="" For c=Mid a=ASCW(c) If s = s & c ElseIf s = s & c ElseIf s = s & "%0" & Hex ElseIf s = s & "%" & Hex Else s = s & "%u" & Hex End If Next vbsEscape = s End Function Function dim s="" For c=Mid If If s = s & CHRW(CInt("&H" & Mid i = i+5 Else s = s & c End If ElseIf If s = s & CHRW(CInt("&H" & Mid i = i+2 Else s = s & c End If Else s = s & c End If Next vbsUnEscape = s End Function |
最近读者:
