递归函数列出父级的所有子级ID (ID ParentID模式) ,为什么不行的?请帮助 我要调出父级的所有子级的ID,上面的例子也就是调出父classid的所有子classid 记录如下:
classid parentID
1 0
2 1
3 1
4 2
5 2
6 4
7 5 Response.write classids(1) 结果为 1,2,3,4,5,6,7,
'调出子类所有ID
function classids(cid)
dim rs,sql
sql = "SELECT ClassId,ParentID FROM [class] where ParentID = "& cid
set rs = conn.execute(sql)
if not(rs.eof and rs.bof) then
do while not rs.eof
classids = classids(rs(0))
classids = classids & rs(0)& ","
rs.movenext
loop
end if call setNull(rs)
end function
classid parentID
1 0
2 1
3 1
4 2
5 2
6 4
7 5 Response.write classids(1) 结果为 1,2,3,4,5,6,7,
'调出子类所有ID
function classids(cid)
dim rs,sql
sql = "SELECT ClassId,ParentID FROM [class] where ParentID = "& cid
set rs = conn.execute(sql)
if not(rs.eof and rs.bof) then
do while not rs.eof
classids = classids(rs(0))
classids = classids & rs(0)& ","
rs.movenext
loop
end if call setNull(rs)
end function
function classids(cid)
dim rs,sql
classids=""
sql = "SELECT ClassId,ParentID FROM [class] where ParentID = "& cid
set rs = conn.execute(sql)
do while not rs.eof
classids = classids & rs(0) & ","
rs.movenext
loop
if len(classids)>0 classids=left(classids,len(classids)-1)
end function '调出子\孙ID
function classids(cid)
dim rs,sql
classids=""
sql = "SELECT ClassId,ParentID FROM [class] where ParentID = "& cid
set rs = conn.execute(sql)
do while not rs.eof
classids =classids & classids(rs(0)) & ","
rs.movenext
loop
if len(classids)>0 classids=left(classids,len(classids)-1)
end function