演示:http://asp2004.net/temp/treemenu/menu.asp
源代码下载:http://asp2004.net/temp/treemenu.rar
<!--#include file="conn.asp"-->
<%
dim str
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
str=str+"<table border='0' cellspacing='0' cellpadding='0'>"+chr(13)
i=1
while not rs.eof
ChildCount=conn.execute("select count(*) from menu where id1="&rs("id"))(0)
if ChildCount=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=" onMouseUp=change1('a"&rs("id")&"','b"&rs("id")&"');"
else
menutype="menu1"
listtype="list"
onmouseup=" onMouseUp=change2('a"&rs("id")&"','b"&rs("id")&"');"
end if
menuname=rs("menuname")
end if
str=str+"<tr><td id='b"&rs("id")&"' class='"&menutype&"'"&onmouseup&">"&menuname&"</td></tr>"+chr(13)
if ChildCount>0 then
str=str+"<tr id='a"&rs("id")&"' style='display:none'><td class='"&listtype&"'>"+chr(13)
menu(rs("id"))
str=str+"</td></tr>"+chr(13)
end if
rs.movenext
i=i+1
wend
str=str+"</table>"+chr(13)
rs.close
set rs=nothing
end function
menu(0)
set fso=server.CreateObject("scripting.filesystemobject")
set f1=fso.opentextfile(server.MapPath("demo.htm"),2,true)
f1.write("<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN' 'http://www.w3.org/TR/html4/loose.dtd'>")
f1.write("<html>")
f1.write("<head>")
f1.write("<meta http-equiv='Content-Type' content='text/html; charset=gb2312'>")
f1.write("<title>哈哈~~~!这回速度超快了吧?</title>")
f1.write("<meta name='keywords' content='asp2004,树,菜单,无限级'>")
f1.write("<meta name='author' content='小灰,quxiaohui_0@163.com'>")
f1.write("<link href='style.css' rel='stylesheet' type='text/css'>")
f1.write("<script language='javascript' src='function.js'></script>")
f1.write("</head>")
f1.write("<body>")
f1.write("<a href='http://asp2004.net' target='_blank'>http://asp2004.net</a>提供最新下载《<a href='menu.asp'>管理</a>》<br>")
f1.write(str)
f1.write("</body>")
f1.write("</html>")
f1.close
set fso=nothing
response.Redirect("demo.htm")
%>