您的位置:资讯频道 > 技术文档 > DHtml/Script

Ajax获取的返回数据中包含中文的处理办法

来源:博客   作者:MichaelFeng   时间:2008-03-25  点击:294 次
看下面的代码片段,主要完成的是获取返回的数据(实现股票功能)

var data=bytes2BSTR(xmlhttp.ResponseBody);

上述代码中,在处理返回数据的时候用到了bytes2BSTR方法,这是一个网络流行的编码转换方法,主要是将返回字符串中的中文乱码转换成正确的格式,这是一个vb脚本方法。我们需要在网站添加一个VBScript.vbs的文件,下面是VBScript.vbs中的内容:

Function bytes2BSTR(vIn)
strReturn = ""
For i = 1 To LenB(vIn)
ThisCharCode = AscB(MidB(vIn,i,1))
If ThisCharCode < &H80 Then
strReturn = strReturn & Chr(ThisCharCode)
Else
NextCharCode = AscB(MidB(vIn,i+1,1))
strReturn = strReturn & Chr(CLng(ThisCharCode) * &H100 + CInt(NextCharCode))
i = i + 1
End If
Next
bytes2BSTR = strReturn
End Function

在使用编码转换的方法时,返回的数据应为ResponseBody:因为服务器的响应包括head、body等全部信息,所以可以使用此属性只获取相应的body部分