ASP四级连动下拉列表程序段
发布时间:2009-07-03 15:33:00
<%
sql = "select * from SMT_addtwo order by SMT_addtwo_id asc"
set rs=server.createobject("ADODB.Recordset")
rs.open sql,conn,1,1
%>
<script language = "JavaScript">
var onecount1;
var onecount2;
var onecount3;
onecount1=0;
onecount2=0;
onecount3=0;
subcat1 = new Array();
subcat2 = new Array();
subcat3 = new Array();
<%
count = 0
do while not rs.eof
%>
subcat1[<%=count%>] = new Array("<%= trim(rs("SMT_addtwo"))%>","<%= trim(rs("SMT_addone_id"))%>","<%= trim(rs("SMT_addtwo_id"))%>");
<%
count = count + 1
rs.movenext
loop
rs.close
set rs=nothing
%>
onecount1=<%=count%>;
<%
sql = "select * from SMT_addthree order by SMT_addthree_id asc"
set rs=server.createobject("ADODB.Recordset")
rs.open sql,conn,1,1
count = 0
do while not rs.eof
%>
subcat2[<%=count%>] = new Array("<%= trim(rs("SMT_addthree"))%>","<%= trim(rs("SMT_addtwo_id"))%>","<%= trim(rs("SMT_addthree_id"))%>");
<%
count = count + 1
rs.movenext
loop
rs.close
set rs=nothing
%>
onecount2=<%=count%>;
<%
sql = "select * from SMT_addfour order by SMT_addfour_id asc"
set rs=server.createobject("ADODB.Recordset")
rs.open sql,conn,1,1
count = 0
do while not rs.eof
%>
subcat3[<%=count%>] = new Array("<%= trim(rs("SMT_addfour"))%>","<%= trim(rs("SMT_addthree_id"))%>","<%= trim(rs("SMT_addfour_id"))%>");
<%
count = count + 1
rs.movenext
loop
rs.close
set rs=nothing
%>
onecount3=<%=count%>;
function changelocation1(addone)
{
document.addform.addtwo_id.length = 0;
var addone_id=addone_id;
var i;
document.addform.addtwo_id.options[0] = new Option('请选择省','');
for (i=0;i < onecount1; i++)
{
if (subcat1[i][1] == addone)
{
document.addform.addtwo_id.options[document.addform.addtwo_id.length] = new Option(subcat1[i][0], subcat1[i][2]);
}
}
}
function changelocation2(addtwo)
{
document.addform.addthree_id.length = 0;
var addtwo_id=addtwo_id;
var i;
document.addform.addthree_id.options[0] = new Option('请选择市','');
for (i=0;i < onecount2; i++)
{
if (subcat2[i][1] == addtwo)
{
document.addform.addthree_id.options[document.addform.addthree_id.length] = new Option(subcat2[i][0], subcat2[i][2]);
}
}
}
function changelocation3(addthree)
{
document.addform.addfour_id.length = 0;
var addthree_id=addthree_id;
var i;
document.addform.addfour_id.options[0] = new Option('请选择县','');
for (i=0;i < onecount3; i++)
{
if (subcat3[i][1] == addthree)
{
document.addform.addfour_id.options[document.addform.addfour_id.length] = new Option(subcat3[i][0], subcat3[i][2]);
}
}
}
</script>
列表控件中的change事件:
<select name="addone_id" onChange="changelocation1(document.addform.addone_id.options[document.addform.addone_id.selectedIndex].value)">
<option value="" selected>选择国家</option>
<%
sql="select * from SMT_addone order by SMT_addone_id Asc"
set rs=server.createobject("ADODB.Recordset")
rs.open sql,conn,1,1
while not rs.eof%>
<option value="<%=rs("SMT_addone_id")%>"><%=rs("SMT_addone")%></option>
<%
rs.movenext
wend
rs.Close()
%>
</select>
<select name="addtwo_id"onChange="changelocation2(document.addform.addtwo_id.options[document.addform.addtwo_id.selectedIndex].value)">
<option selected value="">选择省份</option>
</select>
<select name="addthree_id"onChange="changelocation3(document.addform.addthree_id.options[document.addform.addthree_id.selectedIndex].value)">
<option selected value="">选择市区</option>
</select>
<select name="addfour_id">
<option selected value="">选择县区</option>
</select>


猜你喜欢
- 前三篇文章中,明确了栅格系统的设计细节和适用范围。这一篇将集中讨论960栅格系统的技术实现。Blueprint的实现Blueprint是一个
- 前言异常值是指样本中的个别值,也称为离群点,其数值明显偏离其余的观测值。常用检测方法3σ原则和箱型图。其中,3σ原则只适用服从正态分布的数据
- http://swik.net/Ajax/Ajax+Mistakes在某网站瞎逛时,发现这个链接,进去逛了逛,觉得很有意思,大家也可以去看看
- 应用一:有时候我们想把一个 list 或者 dict 传递给 javascript,处理后显示到网页上,比如要用 js 进行可视化的数据。请
- <?php /* *@author 夜无眠  
- 1. 实例的背景说明假定一个个人信息系统,需要记录系统中各个人的故乡、居住地、以及到过的城市。数据库设计如下:Models.py 内容如下:
- 1.检查重复元素下面的方法可以检查给定列表中是否有重复的元素。它使用了 set() 属性,该属性将会从列表中删除重复的元素。def all_
- golang 函数以及函数和方法的区别在接触到go之前,我认为函数和方法只是同一个东西的两个名字而已(在我熟悉的c/c++,python,j
- 逻辑回归模型 逻辑回归是应用非常广泛的一个分类机器学习算法,它将数据拟合到一个logit函数(或者叫做logistic函数)中,从而能够完成
- 在计算机编程中,数据类型是非常重要的一个概念。数据类型决定了计算机内部如何表示数据,以及在执行不同的操作时需要进行哪些转换。Go 语言作为一
- python异步IO初探探索异步IO执之前,先说说IO的种类1.阻塞IO最简单,即读写数据时,需要等待操作完成,才能继续执行。进阶的做法就是
- 1 常规错误的yum安装方法:在前文中记述了CentOS 6.5系统中通过yum方式快速地搭建了LNMP环境,那么是否也能在CentOS 7
- 首先,创建一个存储过程 get_clob: t_name:要查询的表名;f_name:要查询的字段名;u_id:表的主键,查询条件;l_po
- 使用tensorflow训练模型的时候,模型持久化对我们来说非常重要。如果我们的模型比较复杂,需要的数据比较多,那么在模型的训练时间会耗时很
- 链表由一系列不必在内存中相连的结构构成,这些对象按线性顺序排序。每个结构含有表元素和指向后继元素的指针。最后一个单元的指针指向NULL。为了
- 1 监听启动activity 信息命令adb shell logcat | grep START 可以查看apk包名和Activity名字=
- 在国内利用Python从Internet上爬取数据时,有些网站或API接口被限速或屏蔽,这时使用代理可以加速爬取过程,减少请求失败,Pyth
- 这是 小马 在交流会中的分享,可能有些朋友还不曾了解,同时也为了自己温故而知新,就整理下。多种方式可以想像得到,有很多方法立即执行匿名函数,
- 1、环境1、python 3.72、pyinstaller2、下载方式:2.1 python安装(略)2.2 安装pyinstaller打开
- 举例如下,一个服务器端的form 代码自动被解释成客户端代码:服务器端代码: &l