四川省内医保转移:asp中四级联动菜单怎么实现?

来源:百度文库 编辑:高考问答 时间:2024/05/03 10:41:22
例:
MS_SORT 表
SORTID
SORTNAME
-------------
MS_CSORT
CSORTID
CSORTNAME
SORTID
--------------
MS_CXSORT
CXSORTID
CXSORTNAME
CSORTID
-------------
MS_CYSORT
CYSORTID
CYSORTNAME
CXSORTID

我这里有个二级连动,你模仿做四级的吧
<%set rs=conn.execute("select * from ms_sort")%>
<script language = "JavaScript">
var onecount;
onecount=0;
subcat = new Array();
<%
count = 0
do while not rs.eof
%>
subcat[<%=count%>] = new Array("<%=rs(1)%>","<%=rs(2)%>","<%=rs(0)%>");
<%
count = count + 1
rs.movenext
loop
rs.close
%>
onecount=<%=count%>;

function changelocation(locationid)
{
document.form1.Nclassid.length = 0;

var locationid=locationid;
var i;
for (i=0;i < onecount; i++)
{
if (subcat[i][1] == locationid)
{
document.form1.Nclassid.options[document.form1.Nclassid.length] = new Option(subcat[i][0], subcat[i][2]);
}
}

}
表的结构如下:
id 自动编号
classname 类别名
flag 小类别所属号
说明:
如果是大类别则flag字段为零
小类别的flag是大类别id号


id classname flag
1 大类别1 0
2 大类别2 0
3 小类别1 1
4 小类别2 1
5 小类别3 2
6 小类别4 2
则大类别1包括id号为3和4的小类别
大类别2包括id号为5和6的小类别

有两个select 在form1里

<form name="form1">
大类别
<select name="classid" onChange="changelocation(document.form1.classid.options[document.form1.classid.selectedIndex].value);" size="1">
<option value="1">大类别1</option>
<option value="2">大类别2</option>
</select>
小类别
<select name="Nclassid" size="1">
<option value="">选择小类别</option>
</select>
</form>