ASP+数据库版的二级联动菜单

本文介绍了一种使用ASP和数据库实现的二级联动菜单方案。通过两个数据表BigClass和SmallClass构建分类体系,并利用JavaScript实现了根据一级分类动态加载二级分类的功能。

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

ASP+数据库版的二级联动菜单- -

                                      

ASP+数据库版的二级联动菜单

数据表结构:
BigClass

 BigClassID  int  4
 BigClassName varchar 50


SmallClass
 SmallClassID int 4
 SmallClassName varchar 50
 BigClassID int 4

ASP中经常要用到联动菜单,把以前写的一个ASP+数据库版的二级联动的贴这里来,免得以后要用起来再重新去写了。

数据表结构:
BigClass

 BigClassID  int  4
 BigClassName varchar 50


SmallClass
 SmallClassID int 4
 SmallClassName varchar 50
 BigClassID int 4


以下是程序:<!--#include file="include/conn.asp"-->
<script language = "javascript">
var j;
j=0;
goaler = new Array();
<%set rs=conn.execute("select * from SmallClass order by SmallClassID")
if rs.eof then%>
goaler[0] = new Array("无分类","","");
<%else
i=0
do while not rs.eof%>
goaler[<%=i%>] = new Array("<%=rs("SmallClassName")%>","<%=rs("BigClassID")%>","<%=rs("SmallClassID")%>");
<%rs.movenext
i=i+1
loop
end if
rs.close
%>
j=<%=i%>;

function changelocation(locationid)
{
document.goalerform.SmallClassID.length = 0;

var locationid=locationid;
var i;
for (i=0;i < j; i++)
{
if (goaler[i][1] == locationid)
{
document.goalerform.SmallClassID.options[document.goalerform.SmallClassID.length] = new Option(goaler[i][0], goaler[i][2]);
}
}

}
</script>

<form method="post" name="goalerform" action="">
<select name="BigClassID" onChange="changelocation(document.goalerform.BigClassID.options[document.goalerform.BigClassID.selectedIndex].value)" size="1">
<%set rs=conn.execute("select * from BigClass order by BigClassID")
if rs.eof then%>
<option selected value="">无一级分类</option>
<%else%>
<option selected value="">请选择一级分类</option>
<%do while not rs.eof%>
<option value="<%=rs("BigClassID")%>"><%=rs("BigClassName")%></option>
<%rs.movenext
loop
end if%>
</select>
<select name="SmallClassID">
<option selected value="">未指定一级分类</option>
</select>
<input type="submit" name="goaler" value="提交">
</form>


<%'测试取值
if request("goaler")<>"" then
response.write "BigClassID="&request("BigClassID")&"<BR>SmallClassID="&request("SmallClassID")
end if%>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值