asp动态树菜单集合(1/3)

本文介绍了一种使用ASP实现的二级树形菜单结构,该菜单能够同时展开多个子菜单,并提供了完整的代码示例。文章展示了如何通过数据库查询填充菜单项,并利用JavaScript控制菜单的折叠与展开。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

二级树菜单,可以同时打开多个子菜单

如下类型

数据库结构如下:

为了方便全部程序的调试,有多余字段,使用时请删除多余字段.

bigclass表

bigclassid bigclassname

smallclass表

smallclassname,smallclassid,bigclassid,bigclassname

<!--#includefile="inc/conn.asp"-->
<tableborder="0"width="100%"height="200"cellspacing="0"cellpadding="0">
<tr>
<tdwidth="20%"height="200"bgcolor="#F0F0F0"valign=top>
<scriptlanguage="JavaScript">
<!--
FunctionshowLay()functionshowLay(divId){
varobjDiv
=eval(divId);
if(objDiv.style.display=="none"){
eval(
"sp"+divId+".innerHTML='-'");
objDiv.style.display
="";
}
else{
eval(
"sp"+divId+".innerHTML='+'");
objDiv.style.display
="none";
}
}
//-->
</script>
<%
dimrsTEMP,sqlTEMP
bigclassname
=request("bigclassname")
smallclassname
=request("smallclassname")

callopenDB()
sql
="selectbigclassid,bigclassnamefrombigclass"
setrs=conn.execute(sql)
counter
=0'---------------------------------------------------------------------ACOUNTERUSED
whilenotrs.eof
counter
=counter+1
sqlTEMP
="selectsmallclassnamefromsmallclasswherebigclassid="&rs("bigclassid")
setrsTEMP=conn.execute(sqlTEMP)
ifbigclassname<>rs("bigclassname")then
%
>
<ahref="#"onclick="showLay('Layer<%=counter%>')"><spanid="spLayer<%=counter%>">+</span><%=rs("bigclassname")%></a><br>
<divid="Layer<%=counter%>"style="display:none;">
<%whilenotrsTEMP.eof%>
|
-<aHREF="bookincategory.asp?bigclassname=<%=rs("bigclassname")%>&smallclassname=<%=rsTEMP("smallclassname")%>">
<%=rsTEMP("smallclassname")%></a><br>
<%
rsTEMP.movenext
wend
else
%
>
<ahref="#"onclick="showLay('Layer<%=counter%>')"><spanid="spLayer<%=counter%>">-</span><%=rs("bigclassname")%></a><br>
<divid="Layer<%=counter%>">
<%whilenotrsTEMP.eof%>
|
-<aHREF="bookincategory.asp?bigclassname=<%=rs("bigclassname")%>&smallclassname=<%=rsTEMP("smallclassname")%>">
<%=rsTEMP("smallclassname")%></a><br>
<%
rsTEMP.movenext
wend
endif
%
>
</div>
<%
rs.movenext
wend
%
>
</td>
<tdwidth="80%"height="200"bgcolor="#F7FDFD">

</td></tr></table>











评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值