原文地址為:ASP生成JSON數據
< %@LANGUAGE = " VBSCRIPT " CODEPAGE = " 65001 " % >
< ! -- #include file = "
json.
asp " -->
< ! -- #include file = " inc/Conn.asp " -->
< %
response.ContentType = " text/json "
dim j
' 多重嵌套的JSON,要使用Dictionary才能實現
set j = new json
j.toResponse = false
set r = server.createobject( " scripting.dictionary " )
set b = server.createobject( " scripting.dictionary " )
set c = server.createobject( " scripting.dictionary " )
c.add " x " , 5
c.add " y " , 6
c.add " z " , 11
b.add " event " , " Mouse Click "
b.add " data " ,c
r.add " success " , true
r.add " result " ,b
a = j.toJSON( empty ,r, false )
response.write a
' 記錄集轉為Json
set i = new json
i.toresponse = false
set rs = server.CreateObject( " adodb.recordset " )
sqlstr = " select top 5 * from producttype "
rs.open sqlstr,conn, 0 , 1
v = i.toJson( " result " ,rs, false )
rs.close
response.write v
% >
面要注意的是:
1,嵌套的JSON是要用DICTIONARY來生成的,其他的方法,我還沒有找到
2,最終的結果在輸出時,可以用toJson(empty,r,false)這種形式,這樣,生成的JSON,就不會類似{var:{var1:'',var2:''}}這種形式,而是直接的:{var1:'',var2:''},這種格式在我們用來處理表單,返回數據時,一定要注意
3,生成JSON的ASP頁面,輸出格式,解析JSON的JS文件,HTML頁面,必須全是UTF-8格式編碼,一個環節編碼不正確,就會導致接收到的JSON在顯示中文時變亂碼
轉載請注明本文地址:ASP生成JSON數據
