特點: 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>
|