日期:2014-05-17  浏览次数:20840 次

ASP生成JSON的问题

代码如下:
前台页面
$.getJSON(“AjaxService.asp?uid=” + escape(option.value) + “&r=” + Math.random(), function (date) {
if (date.success == 0) {
validateSettings.succeed.run(option);
namestate = true;
} else {
validateSettings.error.run(option, option.prompts.error.beUsed.replace(“{1}”, option.value));
namestate = false;
}
})

后台
<%@LANGUAGE=”VBSCRIPT” CODEPAGE=”65001″%>
<!–#include file=”JSON_2.0.4.asp”–>
<!–#include file=”conn.asp”–>
<%
Response.Charset=”utf-8″
Dim data,uname
Dim rs,sql
uname=Request.QueryString(“uid”)
uname=VbsUnEscape(uname)
Set data = jsObject()
Set rs=server.createobject(“adodb.recordset”)
sql=”selse * from table where field =’”&uname&”‘”
if rs.eof and rs.bof then
data(“success”)= -1
else
data(“success”) = 0
end if
data.Flush

Function VbsUnEscape(str)
Dim x
x=InStr(str,”%”)
Do While x>0
VbsUnEscape=VbsUnEscape&Mid(str,1,x-1)
If LCase(Mid(str,x+1,1))=”u” Then
VbsUnEscape=VbsUnEscape&ChrW(CLng(“&H”&Mid(str,x+2,4)))
str=Mid(str,x+6)
Else
VbsUnEscape=VbsUnEscape&Chr(CLng(“&H”&Mid(str,x+1,2)))
str=Mid(str,x+3)
End If
x=InStr(str,”%”)
Loop
VbsUnEscape=VbsUnEscape&str
End Function
%>
利用FireFox调试时候,后台返回乱码,何解呀?

每个asp文件最顶端加上:
<%@LANGUAGE=”VBSCRIPT” CODEPAGE=”65001″%>
<%Response.CodePage=65001%>
<%Response.Charset=”utf-8″%>
asp文件保存成utf-8格式,这样就不会有任何乱码问题了。

此文由Web开发之答疑解惑源www.znjcx.com整理,如需转载,请注明原文(ASP生成JSON的问题)出处:http://www.znjcx.com/html/y2012/2606_generate-json-asp-issue.html,谢谢!

更多热门文章:

1.do while语句为何先判断条件再执行?

2.FSO删除文件

3.ASP+JMAIL的一些问题

4.Ajax中页面有问题

5.生成一个单号,检查数据库是否有重复?