三级下拉框连动的数据库版
2018-09-06 11:21
三级下拉框连动
数据库:
location
表1 loaction所在地表
字段
loactionid
loactionname 名字
表2 district所在的地区表
字段
locationid
districtid
districtname
表3 village所在的县区表
字段
districtid
villageid
villagename
<%Option Explicit%>
<%
dim conn
dim rs
dim sql
dim count
dim rs1
dim sql1
dim rs2
dim sql2
dim count2
conn.openprovider=sqloledb;data source=192.168.0.33;uid=sa;pwd=;database=location;
sql = select * from district order by locationid asc
set rs = conn.execute(sql)
%>
var onecount;
onecount=0;
subcat = new Array();
<%
count = 0
do while not rs.eof
%>
subcat[<%=count%>] = new Array(<%= trim(rs(districtname))%>,<%= trim(rs(locationid))%>,<%= trim(rs(districtid))%>);
<%
count = count + 1
rs.movenext
loop
rs.close
set rs=nothing
%>
onecount=<%=count%>;
function changelocation(locationid)
{
document.myform.smalllocation.length = 0;
var locationid=locationid;
var i;
document.myform.smalllocation.options[0] = new Option(==所选城市的地区==,);
for (i=0;i < onecount; i++)
{
if (subcat[i][1] == locationid)
{
document.myform.smalllocation.options[document.myform.smalllocation.length] = new Option(subcat[i][0], subcat[i][2]);
}
}
}
<%sql2 = select * from village order by districtid asc
set rs2 = conn.execute(sql2)
%>
var onecount2;
onecount2=0;
subcat2 = new Array();
<%
count2 = 0
do while not rs2.eof
%>
subcat2[<%=count2%>] = new Array(<%= trim(rs2(villagename))%>,<%= trim(rs2(districtid))%>,<%= trim(rs2(villageid))%>);
<%
count2 = count2 + 1
rs2.movenext
loop
rs2.close
set rs2=nothing
%>
onecount2=<%=count2%>;
function changelocation2(villageid)
{
document.myform.village.length = 0;
var villageid=villageid;
var j;
document.myform.village.options[0] = new Option(==所选地区的县区==,);
for (j=0;j < onecount2; j++)
{
if (subcat2[j][1] == villageid)
{
document.myform.village.options[document.myform.village.length] = new Option(subcat2[j][0], subcat2[j][2]);
}
}
}
下一篇:ASP常用源代码的总结(上)