ASP+ACCESS实现的无限级目录树
关键代码:
<%
set conn=server.createobject("ADODB.CONNECTION")
connstr="DBQ="+server.mappath("db1.mdb")+";DefaultDir=;
DRIVER={Microsoft Access Driver (*.mdb)};"
conn.open connstr
function menu(id)
set rs=server.CreateObject("adodb.recordset")
sql="select * from menu where id1="&id&" order by url,id"
rs.open sql,conn,1,1
if rs.recordcount=0 then
rs.close
set rs=nothing
exit function
end if
response.write("<table border=0 cellspacing=0 cellpadding=0>")
i=1
while not rs.eof
if len(rs("url"))>0 then
if i=rs.recordcount then
menutype="file1"
else
menutype="file"
end if
menuname="<a href="&rs("url")&" target=_blank>"&rs("menuname")&"</a>"
onmouseup=""
else
if i=rs.recordcount then
menutype="menu3"
listtype="list1"
onmouseup="with(eval(id"&rs("id")&"))if(style.display==)
{style.display=none;this.className=menu3;}else{style.display=;this.className=menu4;}"
else
menutype="menu1"
listtype="list"
onmouseup="with(eval(id"&rs("id")&"))if(style.display==)
{style.display=none;this.className=menu1;}else{style.display=;this.className=menu2;}"
end if
menuname=rs("menuname")
end if
%>
<tr>
<td class="<%= menutype%>" onMouseUp="<%= onmouseup%>"><%= menuname%></td>
</tr>
<%if len(rs("url"))<3 then%>
<tr id="id<%= rs("id")%>" style="display:none">
<td class="<%= listtype%>"><%menu(rs("id"))%></td>
</tr>
<%
end if
rs.movenext
i=i+1
wend
response.write("</table>")
rs.close
set rs=nothing
end function
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>=========无限级目录树=========http://www.knowsky.com</title>
<style type="text/css">
<!--
.menu1 {
background-image: url(folder1.gif);
background-repeat: no-repeat;
height: 17px;
left: 32px;
padding-left: 32px;
cursor: hand;
}
.menu2 {
background-image: url(folder2.gif);
background-repeat: no-repeat;
height: 17px;
left: 32px;
padding-left: 32px;
cursor: hand;
}
.menu3 {
background-image: url(folder3.gif);
background-repeat: no-repeat;
height: 17px;
left: 32px;
padding-left: 32px;
cursor: hand;
}
.menu4 {
background-image: url(folder4.gif);
background-repeat: no-repeat;
height: 17px;
left: 32px;
padding-left: 32px;
cursor: hand;
}
.list {
padding-left: 20px;
background-image: url(list.gif);
background-repeat: repeat-y;
}
.list1 {
padding-left: 20px;
}
.file {
background-image: url(file.gif);
background-repeat: no-repeat;
height: 16px;
cursor: hand;
padding-left: 32px;
}
.file1 {
background-image: url(file1.gif);
background-repeat: no-repeat;
height: 16px;
cursor: hand;
padding-left: 32px;
}
body {
font-size: 9pt;
color: #000000;
background-color: #FFFFFF;
}
a:link {
font-size: 9pt;
color: #000000;
text-decoration: none;
}
a:visited {
font-size: 9pt;
color: #000000;
text-decoration: none;
}
a:hover {
font-size: 9pt;
color: #0000FF;
text-decoration: none;
position: relative;
right: 1px;
bottom: 1px;
}
a:active {
font-size: 9pt;
color: #000000;
text-decoration: none;
}
-->
</style>
</head>
<body>
<a href="http://www.domain.com/" target="_blank">http://www.domain.com/</a>
提供最新下载《<a href="menu.asp">管理</a>》<br>
<%
menu 0
conn.close
set conn=nothing
%>
</body>
</html>