id name
===================
01 男装
02 女装
03 童装
0101 上衣
0102 裤子
010101 T恤
010102 衬衫
010201 短裤子
010202 牛仔裤
0201 女上衣
0202 裤子
...
==================================================
想实现图片中那种效果,用鼠标点一下+就可以展开,点一下-就可以收缩
我在网上找到一个代码,但这个代码有点问题,看哪个高手能帮我修改好.或是有能实现我这个效果的代码,要求速度快!
最好是以我的表和字段来写.谢谢了!!
sub showtreeforline(table,rs,tree)
if len(tree)=0 then
S_Isroot=0
end if
trees="1"
treestr=tree&trees
set rs=server.CreateObject("adodb.recordset")
rs.open"select * from "&table&" where len("&table&"id)=2 order by "&table&"id",conn,1,1
if rs.eof and tree="" then
response.Write" <tr class='tdbg'><td><center>暂无分类</center></td></tr>"
else
do while not rs.eof
NS_Name=rs(table)
NS_Id=rs(table&"id")
rs.movenext
if rs.eof then
trees="0"
treestr=tree&trees
end if
response.Write" <tr class='tdbg'>"
'Response.Write("<TD vAlign=bottom width='5%'>"&NS_Id&"</td> ")
Response.Write("<td valign='center' width='65%'>")
for i=0 to len(treestr)-2
if mid(treestr,i+1,1)="1" then
response.Write("<img src='image/line.GIF' align='absbottom'>")
else
response.Write(" ")
end if
next
if trees="0" then
if tree="" and S_Isroot=0 then
response.Write" "
else
response.Write"<img src='image/tree1.GIF' align='absbottom'>"
end if
elseif tree="" then
if S_Isroot=1 then
response.Write"<img src='image/tree.GIF' align='absbottom'>"
else
response.Write"<img src='image/tree0.GIF' align='absbottom'>"
end if
else
response.Write"<img src='image/tree.GIF' align='absbottom'>"
end if
response.Write ""&NS_Id&" "&NS_Name&""
response.Write "<td width='35%'>"
response.Write " <a href='"&table&"_Edit.asp?id="&table&"id' title='"&NS_Name&"'>修改</a>"
response.Write" | <a href='"&table&"_Add.asp?id="&table&"id' title='"&NS_Name&"'>添加分类</a>"
response.Write" | <a href='"&table&"_Del.asp?id="&table&"id' onClick=""return confirm('此操作不可恢复,确定执行吗?');"">删除</a>"
response.Write"</td>"
response.Write"</tr>"&vbcrlf
showtreeforline table,"rs"&cstr(NS_Id),treestr
S_Isroot=1
loop
end if
rs.close
end sub
sub showtree(table)
response.Write"<table border='0' cellpadding='0' cellspacing='0' width='100%' class='border' bgcolor='#FFFFFF'>"
showtreeforline table,"rs",""
response.Write"</table>"
end sub
%>
20 个解决方案
#1
<%
sub showtreeforline(table,rs,tree)
if len(tree)=0 then
S_Isroot=0
end if
trees="1"
treestr=tree&trees
set rs=server.CreateObject("adodb.recordset")
rs.open"select * from "&table&" where len("&table&"id)=2 order by "&table&"id",conn,1,1
if rs.eof and tree="" then
response.Write" <tr class='tdbg'> <td> <center>暂无分类 </center> </td> </tr>"
else
do while not rs.eof
NS_Name=rs(table)
NS_Id=rs(table&"id")
rs.movenext
if rs.eof then
trees="0"
treestr=tree&trees
end if
response.Write" <tr class='tdbg'>"
'Response.Write(" <TD vAlign=bottom width='5%'>"&NS_Id&" </td> ")
Response.Write(" <td valign='center' width='65%'>")
for i=0 to len(treestr)-2
if mid(treestr,i+1,1)="1" then
response.Write(" <img src='image/line.GIF' align='absbottom'>")
else
response.Write(" ")
end if
next
if trees="0" then
if tree="" and S_Isroot=0 then
response.Write" "
else
response.Write" <img src='image/tree1.GIF' align='absbottom'>"
end if
elseif tree="" then
if S_Isroot=1 then
response.Write" <img src='image/tree.GIF' align='absbottom'>"
else
response.Write" <img src='image/tree0.GIF' align='absbottom'>"
end if
else
response.Write" <img src='image/tree.GIF' align='absbottom'>"
end if
response.Write ""&NS_Id&" "&NS_Name&""
response.Write " <td width='35%'>"
response.Write " <a href='"&table&"_Edit.asp?id="&table&"id' title='"&NS_Name&"'>修改 </a>"
response.Write" ¦ <a href='"&table&"_Add.asp?id="&table&"id' title='"&NS_Name&"'>添加分类 </a>"
response.Write" ¦ <a href='"&table&"_Del.asp?id="&table&"id' onClick=""return confirm('此操作不可恢复,确定执行吗?');"">删除 </a>"
response.Write" </td>"
response.Write" </tr>"&vbcrlf
showtreeforline table,"rs"&cstr(NS_Id),treestr
S_Isroot=1
loop
end if
rs.close
end sub
sub showtree(table)
response.Write" <table border='0' cellpadding='0' cellspacing='0' width='100%' class='border' bgcolor='#FFFFFF'>"
showtreeforline table,"rs",""
response.Write" </table>"
end sub
%>
#2
ip
#3
呵呵,你里面的数据结构有规律都好办
#4
肯定是有规律的啊.没有规律的话怎么排啊~~~
#5
你这个也很简单的,基本上你的这个逻辑是对的,不过你少了一个判断子节点的,所以你这个程序还是无法实现
#6
http://www.chinmo.net/jd/tree.asp
呵呵,我把字段和里面的数据格式改和你的一样,效果出来了,不过有一个缺陷,我也在看是在哪导致这个缺点
呵呵,我把字段和里面的数据格式改和你的一样,效果出来了,不过有一个缺陷,我也在看是在哪导致这个缺点
#7
呵呵,已经解决了
#8
6楼能否把源码传给我.谢谢~~~
#9
呵呵,源码共享就不提供了,思路可以告诉你
#10
楼上,那思路分享一下嘛....
#11
你的那个基本思路是对的
但是你仔细分析下,看看你少了什么没加上去
但是你仔细分析下,看看你少了什么没加上去
#12
我在5楼说的很清楚了
#13
兄弟,那既然写出来了,就分享一下嘛....分享给我,我马上结贴啊!
#14
代码不分享,你的那个修改下,并且加上判断子节点的判断就 OK了
#15
兄弟,我就是不知道嘛...你都写出来,就共享一下嘛...?难道叫我拿钱跟你买不成?
#16
呵呵,在这里我一般只提供思路的
再说你只是进了一个误区而已啊
再说你只是进了一个误区而已啊
#17
老大,你就提供一下吧
#18
Demo:http://baidugoogle.net/tree/
DOWN:http://baidugoogle.net/tree/tree.rar
接分
DOWN:http://baidugoogle.net/tree/tree.rar
接分
#19
标住一下,学习
#20
不错,采用了jquery库,而且写法不错,突破了之前一个朋友用JS写的一个缺陷。
#21
#1
<%
sub showtreeforline(table,rs,tree)
if len(tree)=0 then
S_Isroot=0
end if
trees="1"
treestr=tree&trees
set rs=server.CreateObject("adodb.recordset")
rs.open"select * from "&table&" where len("&table&"id)=2 order by "&table&"id",conn,1,1
if rs.eof and tree="" then
response.Write" <tr class='tdbg'> <td> <center>暂无分类 </center> </td> </tr>"
else
do while not rs.eof
NS_Name=rs(table)
NS_Id=rs(table&"id")
rs.movenext
if rs.eof then
trees="0"
treestr=tree&trees
end if
response.Write" <tr class='tdbg'>"
'Response.Write(" <TD vAlign=bottom width='5%'>"&NS_Id&" </td> ")
Response.Write(" <td valign='center' width='65%'>")
for i=0 to len(treestr)-2
if mid(treestr,i+1,1)="1" then
response.Write(" <img src='image/line.GIF' align='absbottom'>")
else
response.Write(" ")
end if
next
if trees="0" then
if tree="" and S_Isroot=0 then
response.Write" "
else
response.Write" <img src='image/tree1.GIF' align='absbottom'>"
end if
elseif tree="" then
if S_Isroot=1 then
response.Write" <img src='image/tree.GIF' align='absbottom'>"
else
response.Write" <img src='image/tree0.GIF' align='absbottom'>"
end if
else
response.Write" <img src='image/tree.GIF' align='absbottom'>"
end if
response.Write ""&NS_Id&" "&NS_Name&""
response.Write " <td width='35%'>"
response.Write " <a href='"&table&"_Edit.asp?id="&table&"id' title='"&NS_Name&"'>修改 </a>"
response.Write" ¦ <a href='"&table&"_Add.asp?id="&table&"id' title='"&NS_Name&"'>添加分类 </a>"
response.Write" ¦ <a href='"&table&"_Del.asp?id="&table&"id' onClick=""return confirm('此操作不可恢复,确定执行吗?');"">删除 </a>"
response.Write" </td>"
response.Write" </tr>"&vbcrlf
showtreeforline table,"rs"&cstr(NS_Id),treestr
S_Isroot=1
loop
end if
rs.close
end sub
sub showtree(table)
response.Write" <table border='0' cellpadding='0' cellspacing='0' width='100%' class='border' bgcolor='#FFFFFF'>"
showtreeforline table,"rs",""
response.Write" </table>"
end sub
%>
#2
ip
#3
呵呵,你里面的数据结构有规律都好办
#4
肯定是有规律的啊.没有规律的话怎么排啊~~~
#5
你这个也很简单的,基本上你的这个逻辑是对的,不过你少了一个判断子节点的,所以你这个程序还是无法实现
#6
http://www.chinmo.net/jd/tree.asp
呵呵,我把字段和里面的数据格式改和你的一样,效果出来了,不过有一个缺陷,我也在看是在哪导致这个缺点
呵呵,我把字段和里面的数据格式改和你的一样,效果出来了,不过有一个缺陷,我也在看是在哪导致这个缺点
#7
呵呵,已经解决了
#8
6楼能否把源码传给我.谢谢~~~
#9
呵呵,源码共享就不提供了,思路可以告诉你
#10
楼上,那思路分享一下嘛....
#11
你的那个基本思路是对的
但是你仔细分析下,看看你少了什么没加上去
但是你仔细分析下,看看你少了什么没加上去
#12
我在5楼说的很清楚了
#13
兄弟,那既然写出来了,就分享一下嘛....分享给我,我马上结贴啊!
#14
代码不分享,你的那个修改下,并且加上判断子节点的判断就 OK了
#15
兄弟,我就是不知道嘛...你都写出来,就共享一下嘛...?难道叫我拿钱跟你买不成?
#16
呵呵,在这里我一般只提供思路的
再说你只是进了一个误区而已啊
再说你只是进了一个误区而已啊
#17
老大,你就提供一下吧
#18
Demo:http://baidugoogle.net/tree/
DOWN:http://baidugoogle.net/tree/tree.rar
接分
DOWN:http://baidugoogle.net/tree/tree.rar
接分
#19
标住一下,学习
#20
不错,采用了jquery库,而且写法不错,突破了之前一个朋友用JS写的一个缺陷。