主页 > 知识库 > ASP+JS三级联动下拉菜单[调用数据库数据]

ASP+JS三级联动下拉菜单[调用数据库数据]

热门标签:阿里云 银行业务 团购网站 电子围栏 服务器配置 科大讯飞语音识别系统 Linux服务器 Mysql连接数设置
网上三级菜单多是多但是代码都比较烦,我这个应该说还是比较直观的:
'肯定先要连接数据库了,不用说了
'数据库结构
'类别1表名称:a  字段:ID,Name  说明:ID为主键是类别1的ID值,Name为类别1的名称
'类别2表名称:aa  字段:ID,aID,Name  说明:ID为主键是类别2的ID值,aID为所属类别1的ID值,Name为类别2的名称
'类别3表名称:aaa  字段:ID,aID,aaID,Name  说明:ID为主键是类别3的ID值,aID为所属类别1的ID值,aaID为所属类别2的ID值,Name为类别3的名称
=====test1.asp 你可以测试下,接收到的都是类别的ID值====
%
response.write"1:"Request.form("s1")"BR>"
response.write"2:"Request.form("s2")"BR>"
response.write"3:"Request.form("s3")"BR>"
%>
复制代码 代码如下:

!-- 三级联动菜单 开始 -->
script language="JavaScript">
!--
%
'二级数据保存到数组
Dim count2,rsClass2,sqlClass2
set rsClass2=server.createobject("adodb.recordset")
sqlClass2="select * from aa" 
rsClass2.open sqlClass2,conn,1,1
%>
var subval2 = new Array();
//数组结构:一级根值,二级根值,二级显示值
%
count2 = 0
do while not rsClass2.eof
%>
subval2[%=count2%>] = new Array('%=rsClass2("aID")%>','%=rsClass2("ID")%>','%=rsClass2("Name")%>')
%
count2 = count2 + 1
rsClass2.movenext
loop
rsClass2.close
%>
%
'三级数据保存到数组
Dim count3,rsClass3,sqlClass3
set rsClass3=server.createobject("adodb.recordset")
sqlClass3="select * from aaa" 
rsClass3.open sqlClass3,conn,1,1
%>
var subval3 = new Array();
//数组结构:二级根值,三级根值,三级显示值
%
count3 = 0
do while not rsClass3.eof
%>
subval3[%=count3%>] = new Array('%=rsClass3("aaID")%>','%=rsClass3("ID")%>','%=rsClass3("Name")%>')
%
count3 = count3 + 1
rsClass3.movenext
loop
rsClass3.close
%>
function changeselect1(locationid)
{
    document.form1.s2.length = 0;
    document.form1.s2.options[0] = new Option('==请选择类别==','');
    document.form1.s3.length = 0;
    document.form1.s3.options[0] = new Option('==请选择专题==','');
    for (i=0; isubval2.length; i++)
    {
        if (subval2[i][0] == locationid)
        {document.form1.s2.options[document.form1.s2.length] = new Option(subval2[i][2],subval2[i][1]);}
    }
}
function changeselect2(locationid)
{
    document.form1.s3.length = 0;
    document.form1.s3.options[0] = new Option('==请选择专题==','');
    for (i=0; isubval3.length; i++)
    {
        if (subval3[i][0] == locationid)
        {document.form1.s3.options[document.form1.s3.length] = new Option(subval3[i][2],subval3[i][1]);}
    }
}
//-->
/script>
form name="form1" method="post" action="test1.asp">
三级联动:
%
Dim count1,rsClass1,sqlClass1
set rsClass1=server.createobject("adodb.recordset")
sqlClass1="select * from a" 
rsClass1.open sqlClass1,conn,1,1
%>
select name="s1" onChange="changeselect1(this.value)">
option>==请选择频道==/option>
%
count1 = 0
do while not rsClass1.eof
response.write"option value="rsClass1("ID")">"rsClass1("Name")"/option>"
count1 = count1 + 1
rsClass1.movenext
loop
rsClass1.close
%>
/select>
select name="s2"  onChange="changeselect2(this.value)"> 
option>==请选择类别==/option>
/select>
select name="s3"> 
option>==请选择专题==/option>
/select>
input type="submit" name="Submit" value="提交">/form>
!-- 三级联动菜单 结束 -->
您可能感兴趣的文章:
  • PHP+Mysql+Ajax+JS实现省市区三级联动
  • JS制作简单的三级联动
  • javascript实现省市区三级联动下拉框菜单
  • 省市区三级联动下拉框菜单javascript版
  • jquery+json 通用三级联动下拉列表
  • js实现一个省市区三级联动选择框代码分享
  • js实现三级联动效果(简单易懂)
  • 原生js三级联动的简单实现代码
  • 从QQ网站中提取的纯JS省市区三级联动菜单
  • JavaScript实现省市区三级联动

标签:萍乡 大理 江苏 衡水 蚌埠 枣庄 衢州 广元

巨人网络通讯声明:本文标题《ASP+JS三级联动下拉菜单[调用数据库数据]》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266