资源描述
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
以下是程序:<!--#i nclude file="include/conn.asp"-->
< language = "java">
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%>;
changelocation(locationid)
{
goalerform.SmallClassID.length = 0;
var locationid=locationid;
var i;
for (i=0;i < j; i++)
{
if (goaler[i][1] == locationid)
{
goalerform.SmallClassID.options[goalerform.SmallClassID.length] = new Option(goaler[i][0], goaler[i][2]);
}
}
}
</>
<form method="post" name="goalerform" action="">
<select name="BigClassID" onChange="changelocation(goalerform.BigClassID.options[goalerform.BigClassID.selectedIndex].)" size="1">
<%set rs=conn.execute("select * from BigClass order by BigClassID")
if rs.eof then%>
<option selected ="">无一级分类</option>
<%else%>
<option selected ="">请选择一级分类</option>
<%do while not rs.eof%>
<option ="<%=rs("BigClassID")%>"><%=rs("BigClassName")%></option>
<%rs.movenext
loop
end if%>
</select>
<select name="SmallClassID">
<option selected ="">未指定一级分类</option>
</select>
<input type="submit" name="goaler" ="提交">
</form>
展开阅读全文