比较简单的一个页面,类似csdn论坛在ns下的左边列表
描述:
1.
数据名:tree.mdb
表名:tree
表结构:id(自编) pid(数字) content(文本) link(文本)
2.
图片:endnode.gif collapsed.gif back.gif(均在img目录下,可自行修改)
3.
代码:
<!–#include file="conn.inc"–>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=gb2312">
<meta name="generator" content="microsoft frontpage 4.0">
<title>无限级列表</title>
<!–
by fason(2003-5-12)
–>
<style>
.node{
font-size:12px;
padding:0 0 2 0;
margin-left:10;
height:22px;
}
img{
vertical-align:middle;
width:11px;
height:11px;
}
a{text-decoration:none;font-size:12px;color:black}
.deeptree{
width:100%;
height:100%;
backgound-color:#f2f2f2;
overflow:auto;
}
</style>
</head>
<body bgcolor=#f2f2f2>
<nobr>
<div class="deeptree">
<%
newid=request.querystring("id")
if newid="" or cint(newid)<0 then newid=0
if isnumeric(newid) then
listtree(cint(newid))
end if
function listtree(id)
dim rs
dim imgfolder,imgfile
dim link,href,parenthref
dim target,ahref,click
target="main" 所指定的框架名
imgfolder="img/" 默认路径
set rs=conn.execute("select *,(select count(*) from tree where pid = t.id) as children,(select pid from tree where id="&id&") as parent from tree t where pid="&id)
if not rs.eof then
parenthref=request.servervariables("url")&"?id="&rs("parent")
if id<>0 then response.write "<div class=node nowrap=true><a href="&parenthref&" onfocus=blur()><img src="&imgfolder&"back.gif border=0></a> <a href="&parenthref&">上一级目录</a></div>"&vbcrlf
do while not rs.eof
if rs("children")>0 then
img=imgfolder+"collapsed.gif"
href=request.servervariables("url")&"?id="&rs("id")
click="onclick=""location.href="&href&""""
else
img=imgfolder+"endnode.gif"
href="javascript:void(0)"
end if
if not isnull(rs("link")) then
ahref=rs("link")
else
ahref="javascript:void(0)"
target="_self"
end if
link="<a href="&ahref&" target="&target&" title="&rs("content")&" "&click&">"&rs("content")&"</a>"
response.write "<div class=node nowrap=true><a href="&href&" onfocus=blur()><img src="&img&" border=0></a> "&link&"</div>"
rs.movenext
loop
rs.close:set rs=nothing
end if
end function
conn.close:set conn=nothing
%>
</div>
</nobr>
</body>
</html>
conn.inc:
<%
dim conn
set conn = server.createobject("adodb.connection")
conn.open "provider=microsoft.jet.oledb.4.0;data source=" & server.mappath("tree.mdb") & ";persist security info=false"
%>
4.测试:ie6,ns7,mozilla下测试通过
原理比较简单,有错请大家指正,谢谢
