<!--#include file="../../include/dbclass.asp" --> <!--#include file="JSON_2.0.4.asp" --> <!--#include file="../../include/funcation.asp" --> <% '领域设计 OpenConn() '打开数据库连接 Dim db : Set db = New DbCtrl '建立对象 Co(db) : CloseConn() '释放对象,关闭数据库连接 dim pageSize,currentPage 'pageSize = 10 pagesize = Request.QueryString("pageSize") If Request.QueryString("page") = "" Then currentPage = 1 Else currentPage = CInt(Request.QueryString("page")) End If ' 查询父类数据 Set rsParent = db.GetRecordBySQL("select id, MingCheng from BDClass where ParentID='1' order by orders") ' 初始化父类数组 ReDim parentArray(rsParent.RecordCount - 1, 1) ' 循环父类数据 Dim i i = 0 Do While Not rsParent.EOF parentArray(i, 0) = rsParent("id") parentArray(i, 1) = rsParent("MingCheng") ' 查询子类数据 Set rsChild = db.GetRecordBySQL("select C.Comid, C.Title, C.OutUrl, C.TJtitle, C.Logo, C.ZSstar from BDcompany T, Company C where T.Comid=C.Comid and C.IsPass=1 and T.classid='" & rsParent("id") & "' order by Orders, T.AddTime desc, T.ID desc") ' 初始化子类数组 ReDim childArray(rsChild.RecordCount - 1, 5) ' 循环子类数据 Dim j j = 0 Do While Not rsChild.EOF childArray(j, 0) = rsChild("Comid") childArray(j, 1) = rsChild("Title") childArray(j, 2) = rsChild("OutUrl") childArray(j, 3) = rsChild("TJtitle") childArray(j, 4) = rsChild("Logo") childArray(j, 5) = rsChild("ZSstar") rsChild.MoveNext j = j + 1 Loop ' 将子类数组保存到一个新的父类数组元素中 ' 使用动态数组来存储子类数据 ReDim Preserve parentArray(UBound(parentArray, 1), 2) parentArray(i, 2) = childArray rsParent.MoveNext i = i + 1 Loop ' 创建一个 jsArray 对象 Dim jsonArray Set jsonArray = jsArray() ' 遍历 parentArray 并将其元素添加到 jsonArray 中 For i = LBound(parentArray, 1) To UBound(parentArray, 1) Dim parentObj Set parentObj = jsObject() ' 正确设置父对象的属性 parentObj.Pair("id") = parentArray(i, 0) parentObj.Pair("MingCheng") = parentArray(i, 1) Dim childJsonArray Set childJsonArray = jsArray() Dim childArray2 childArray2 = parentArray(i, 2) For j = LBound(childArray2, 1) To UBound(childArray2, 1) Dim childObj Set childObj = jsObject() ' 正确设置子对象的属性 childObj.Pair("Comid") = childArray2(j, 0) childObj.Pair("Title") = childArray2(j, 1) childObj.Pair("OutUrl") = childArray2(j, 2) childObj.Pair("TJtitle") = childArray2(j, 3) childObj.Pair("Logo") = childArray2(j, 4) childObj.Pair("ZSstar") = childArray2(j, 5) ' 正确添加子对象到子 JSON 数组 Set childJsonArray.Pair(Null) = childObj Next ' 正确添加子 JSON 数组到父对象 Set parentObj.Pair("children") = childJsonArray ' 正确添加父对象到 JSON 数组 Set jsonArray.Pair(Null) = parentObj Next ' 输出 JSON 数据 jsonArray.Flush ' 释放资源 Set jsonArray = Nothing db.C(rsParent) db.C(rsChild) conn.Close Set conn = Nothing %>