当前位置: 首页 > 图文教程 > 网络编程 > ASP > 三级下拉框连动的数据库版

ASP
对数据库中的记录用上一条下一条显示(二)
对数据库中的记录用上一条下一条显示(三)
完整的站点访问统计系统(一:数据库篇)
FIF小组ASP互动视频教程
关于ASP,ASP.NET,VB.NET里的MD5加密函数
ASP正则表达式详解
ASP中非数据库实现数据对象的定义及处理
编程爱好者的福音 让IIS6.0支持ASP
使用xml http为网站增加域名查询功能
用ASP实现支持附件的EMail系统
使用ADO.net将数据导出到Excel并提供下载
ASP实现图片上传
asp组件上传
ASPX页Web服务调用性能优化
asp实现语音上传
VBScript教程 第六课
VBScript教程 第三课
使ASP程序跨浏览器
四步讲解ASP中正则表达式的应用
ASP教程:深入认识学习ASP应用Cookies的技巧

ASP 中的 三级下拉框连动的数据库版


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 33 ::
收藏到网摘: n/a

  '三级下拉框连动
'
'数据库:
'location
'表1 loaction  所在地表
'   字段
'   loactionid
'   loactionname 名字
'表2 district  所在的地区表
'   字段
'   locationid
'    districtid
'    districtname
'表3 village  所在的县区表
'   字段
'   districtid
'   villageid
'   villagename

<%Option Explicit%>
<html>
<head>
<title>List</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<%
dim conn
dim rs
dim sql
dim count
dim rs1
dim sql1
dim rs2
dim sql2
dim count2



set conn=server.createobject("adodb.connection")
conn.open"provider=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)
%>
<script language = "JavaScript">
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]);
}
}

}
</script>


<%sql2 = "select * from village order by districtid asc"
set rs2 = conn.execute(sql2)
%>
<script language = "JavaScript">
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]);
}
}

}
</script>



</head>
<body>
<form name="myform" method="post">
题目:<input type="text" name="T2" size="20">

来源:<input type="text" name="T3" size="20">

分类:<select name="biglocation" onChange="changelocation(document.myform.biglocation.options[document.myform.biglocation.selectedIndex].value)" size="1">
<option selected>请选择你所在的省份</option>
<%

sql1 = "select * from location order by locationname asc"
set rs1 = conn.Execute (sql1)
do while not rs1.eof
%>
<option value="<%=trim(rs1("locationid"))%>"><%=trim(rs1("locationname"))%></option