特点: 1、无限级节点。 2、直接产生html代码,容易修改。 3、目录清楚,类似于资源管理器,(csdn论坛的,层数多了就不容易分清楚层次了)。 4、记忆节点状态,人性化。
演示: http://www.yemaweb.com/demo/tree/
下载: http://www.yemaweb.com/demo/tree/tree.rar
核心代码如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <% time11=timer() 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="chengstate('"&rs("id")&"')" else menutype="menu1" listtype="list" onmouseup="chengstate('"&rs("id")&"')" end if menuname=rs("menuname") end if %> <tr> <td id="pr<%= rs("id")%>" class="<%= menutype%>" onMouseUp="<%= onmouseup%>"><%= menuname%></td> </tr> <tr id="item<%= rs("id")%>" style="display:none"> <td class="<%= listtype%>"><%menu(rs("id"))%></td> </tr> <% rs.movenext i=i+1 wend response.write("") rs.close set rs=nothing end function %> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>=========目录树 for asp 1.0 =========</title> <link href="menu.css" rel="stylesheet" type="text/css"> <script src="menu.js" type="text/javascript"></script> </head> <body onLoad="initialize()"> <!-- /****************************************************************************** *程序名称:目录树 for asp *程序功能:基于asp+access的动态树形目录 *涉及函数:menu ;chengstate ;setupcookie ;initialize ;objExists ;saveCookie ;getCookie ;checkCookieExist ;deleteCookie *函数意义: menu :vbscrpt run server Create menu ; chengstate :切换节点状态(open/close); setupcookie :将节点状态存入Cookie ; initialize :初始化节点状态(读取Cookie); objExists :验证对象是否存在 ; saveCookie :执行保存Cookie ; getCookie :执行读取Cookie ; checkCookieExist :验证Cookie是否存在 ; deleteCookie :删除Cookie ; *作 者:于恩水 *联系方式: QQ: 46163020 msn: yuenshui@hotmail.com Email: woaini4651@yahoo.com.cn 支持网站: www.yemaweb.com 如有问题,请与作者联系!!! *制作日期:2004年5月21日 *修改次数:1 *最后修改:2004年5月21日 *备 注:此程序为免费使用的代码,可以由任何人用作任何合法的用途。 ********************************************** 一下为修改 版本修改信息 *******************************************************************************/--> =========无限级目录树=========<br> <% menu 0 conn.close set conn=nothing time12=timer() %>
</body> </html> 服务器执行时间<%=FormatNumber((time12-time11)*1000,1)%>毫秒<br>
|