(ASP,单表版)三级联动,多级联动,想真正了解,或想找到比较好用的多级联动的请进
<%
'数据库名称:Product_Category
'数据库字段:CategoryID;ParentID;Category;CategoryOrder
'*********************************************************************
dbpath=server.mappath("#%20yongfa.mdb")
connstr= "provider=microsoft.jet.oledb.4.0;data source=" & dbpath
set conn=server.createobject("adodb.connection")
conn.open connstr
'*********************************************************************
%>
<!--下边这是组成一个数组,从单一表里调出来-->
<%
dim count1
set rs1=server.CreateObject("adodb.recordset")
sql1="select * from Product_Category order by categoryorder "
rs1.open sql1,conn,1,1
%>
<script language = "JavaScript">
var onecount;
onecount=0;
subcat = new Array();
<%
count1 = 0
do while not rs1.eof
%>
subcat[<%=count1%>] = new Array("<%= trim(rs1("Category"))%>","<%= trim(rs1("Parentid"))%>","<%=trim(rs1("CategoryID"))%>");<%
count1 = count1 + 1
rs1.movenext
loop
rs1.close
%>
onecount=<%=count1%>;
function changelocation(locationid,Category_Search)
{
strobj=eval(document.getElementById(Category_Search));
strobj.length = 0;
var locationid=locationid;
var i;
for (i=0;i < onecount; i++)
{
if (i== 0)
{
strobj.options[strobj.length] = new Option("-请选择 -", "",true);
}
if (subcat[i][1] == locationid)
{
strobj.options[strobj.length] = new Option(subcat[i][0], subcat[i][2]);
}
}
strobj.onchange();
}
</script>
<!--下边这是表单-->
<table width="195" cellspacing="0" cellpadding="0" align="center" style="border:1px solid #666666">
<form action="Product_List.asp" method="get" name="form1">
<tr>
<td align="center" bgcolor="#E7E7EF">三级联动</td>
</tr>
<tr>
<td height="56"><div align="center">
<table width="193" border="0" cellspacing="1" bgcolor="#CCCCCC">
<%
dim rs,sql
set rs=server.CreateObject("adodb.recordset")
%><tr bgcolor="#FFFFFF">
<td width="189">产品品牌
<select name="Category_Search_1" onChange="changelocation(this.options[this.selectedIndex].value,'Category_Search_2')" style="width:100px">
<option value="">-请选择-</option>
<%
sql3="select * from Product_Category where parentid=0 order by categoryorder "
rs.open sql3,conn,1,1
do while not rs.eof
%><option value="<%=rs("CategoryID")%>"><%=rs("Category")%></option>
<%
rs.movenext
loop
rs.close
%>
</select>
</font> </td>
</tr>
<tr bgcolor="#FFFFFF">
<td>产品系统
<select name="Category_Search_2" onChange="changelocation(this.options[this.selectedIndex].value,'Category_Search_3')" style="width:100px">
<option value="">-请选择-</option>
</select>
</td>
</tr>
<tr bgcolor="#FFFFFF">
<td>产品类别
<select name="Category_Search_3" onChange="" style="width:100px">
<option value="" selected>-请选择-</option>
</select></td>
</tr>
</table>
</div></td>
</tr>
</form>
</table>