写了一个三层动态读取文件夹的下拉菜单的例子,供大家参考! <% '得到文件夹路径。注意设置文件名字 urlpath=server.mappath("\book") set fsoBrowse=CreateObject("Scripting.FileSystemObject")
'设置文件夹路径 if Request("path")="" then lpath=urlpath&"\" else lpath=Request("path")&"\" end if %>
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <meta http-equiv=PRAGMA CONTENT=NO-CACHE> <title>中国国际航空公司</title> <link rel="stylesheet" href="news.css">
<script language="JavaScript1.2"> NS4 = (document.layers) ? 1 : 0; IE4 = (document.all) ? 1 : 0; ver4 = (NS4 || IE4) ? 1 : 0;
if (ver4) { with (document) { write("<STYLE TYPE='text/css'>"); if (NS4) { write(".parent {position:absolute; visibility:visible}"); write(".child {position:absolute; visibility:visible}"); write(".regular {position:absolute; visibility:visible}") } else { write(".child {display:none}") } write("</STYLE>"); } }
function getIndex(el) { ind = null; for (i=0; i<document.layers.length; i++) { whichEl = document.layers[i]; if (whichEl.id == el) { ind = i; break; } } return ind; }
function arrange() { nextY = document.layers[firstInd].pageY +document.layers[firstInd].document.height; for (i=firstInd+1; i<document.layers.length; i++) { whichEl = document.layers[i]; if (whichEl.visibility != "hide") { whichEl.pageY = nextY; nextY += whichEl.document.height; } } }
function initIt(){ if (!ver4) return; if (NS4) { for (i=0; i<document.layers.length; i++) { whichEl = document.layers[i]; if (whichEl.id.indexOf("Child") != -1) whichEl.visibility = "hide"; } arrange(); } else { divColl = document.all.tags("DIV"); for (i=0; i<divColl.length; i++) { whichEl = divColl(i); if (whichEl.className == "child") whichEl.style.display = "none"; } } }
function expandIt(el) { if (!ver4) return; if (IE4) { whichEl = eval(el + "Child"); if (whichEl.style.display == "none") { whichEl.style.display = "block"; } else { whichEl.style.display = "none"; } } else { whichEl = eval("document." + el + "Child"); if (whichEl.visibility == "hide") { whichEl.visibility = "show"; } else { whichEl.visibility = "hide"; } arrange(); } }
onload = initIt;
</script>
</head> <body bgcolor="#ffffff" topmargin="0" leftmargin="0"> <table width="248" border="0" cellspacing="0" cellpadding="0" align="left"> <tr> <td> <% '处理第一层文件目录 dim theFolder,theSubFolders if fsoBrowse.FolderExists(lpath)then Set theFolder=fsoBrowse.GetFolder(lpath) Set theSubFolders=theFolder.SubFolders '循环输出第一层文件 i=1 For Each x In theSubFolders k="KB"&i Parent=k&"Parent" i=i+1 %> <div id="<%=Parent%>" class="parent"> <a href="#" onClick="expandIt('<%=k%>'); return false"><img src=http://cfan.net.cn/info/"i_option.gif" width="20" height="16" border="0"><%=x.Name%></a></div> <%'处理第二层文件 onepath=lpath&x.Name&"\" if fsoBrowse.FolderExists(onepath) then Set ChildtheFolder=fsoBrowse.GetFolder(onepath) Set ChildtheSubFolders=ChildtheFolder.SubFolders Child=k&"Child" %> <div id="<%=Child%>" class="child"> <%'循环输出第二层文件 m=1 For Each y In ChildtheSubFolders k="KB"&i&m m=m+1 %> <img src=http://cfan.net.cn/info/"filebox.gif" width="19" height="13"><a href="#" onClick="expandIt('<%=k%>'); return false"><%=y.Name%></a><br> <% '处理第三层文件 twopath=onepath&y.Name&"\" if fsoBrowse.FolderExists(twopath) then Set gtheFolder=fsoBrowse.GetFolder(twopath) Set gtheSubFolders=gtheFolder.SubFolders
Child=k&"Child" %> <div id="<%=Child%>" class="child"> <% '循环输出第三层文件 For Each z In gtheSubFolders %> <img src=http://cfan.net.cn/info/"filebox.gif" width="19" height="13"><%=z.Name%><br> <% Next %> </div> <% end if %> <% Next %> </div> <% end if %> <% Next end if %> </td> </tr>
</body> </html>
|