利用Access创建数据库listBase.mdb:
数据表:listTable
数据字段:listIdlistNamelistInfoparentId
连接方法:
<%
dim sConn,sConnStr,sSql
sConnStr="DRIVER={Microsoft Access Driver (*.mdb)};dbq=" & server.mappath("listBase.mdb")
set sConn=server.createobject("adodb.connection")
sConn.open sConnStr
%>
把以上代码保存成文件:initialize.asp
下面这段程序代码是用来显示目录树用的,保存成文件:inc.asp
<!--#include file="initialize.asp"-->
<script language=jscript>
<!--
//此函数用来显示与关闭它的子菜单的,并切换其前面的小图片
function showMenu(menuObj,isSub){
if(menuObj.style.display=="none"){
menuObj.style.display="";
if(isSub==1){
event.srcElement.src="images/open.gif";
}
}
else{
menuObj.style.display="none";
if(isSub==1){
event.srcElement.src="images/close.gif";
}
}
}
//-->
</script>
<!--下面这段蓝色的区域,是设置目录树的根,
其中的内容非数据内的数据,数据库内的数据都附着在它的下面//-->
<%
response.write("<table width='100%' border='0'
cellspacing='0' cellpadding='0'>" & chr(13))
response.write("<tr>" & chr(13)&"<td>" & chr(13) &
"<table width='100%' border='0' cellspacing='0' cellpadding='0'>")
response.write("<tr>" & chr(13) & "<td width='18' >
<ccid_file values="images/root" onclick=jscript:showMenu(subMenu0,0)
style=cursor:hand alt=不可修改 /></td>" & chr(13) &
"<td width='100' class='menuPro' id='listName0'>根节点</td>"
& chr(13))
response.write("<td width='40' class='menuFont' align='center'
style='cursor:hand' onclick=""jscript:showForm('add',0)"">
添加</td>" & chr(13))
response.write("<td width='40' class='menuFont' align='center' onclick=''></td>" & chr(13))
response.write("<td> </td></tr></table></td></tr>"
& chr(13))
response.write("<tr id='subMenu0'>" & chr(13) &
"<td colspan='2'>" & chr(13))
'此处调用显示目录树的递归函数
listChild(0)
response.write("</td>" & chr(13) & "</tr>" & chr(13)
& "</table>" & chr(13))
'下面代码为显示目录树最要害的函数,使用了递归方法
(很多象这样类型的都是用递归来做的。)
function listChild(id)
dim sRec,sSql,sNum,sTmp
set sRec=server.createobject("adodb.recordset")
sSql="select listId,listName,listInfo,parentId from
listTable where parentId=" & id
sRec.open sSql,sConn,3,1
if not sRec.eof then
评论加载中…
![]() |