asp数据库二级联动下拉(下拉框二级联动数据库)

软件开发 51
本篇文章给大家谈谈asp数据库二级联动下拉,以及下拉框二级联动数据库对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 二级联动asp下拉式列表菜单 总体要求是这样的吧:选择big的下拉菜单后,从数据库获得所选择大项内的二级选项,更新到二级下拉菜单中一级菜单没得说,直接数据库读取二级菜单就可以用两种方法实现, 1、先预读出所有二级选项及对应一级选项的classname,待选择一级菜单后利用js更换二级菜单的选项

本篇文章给大家谈谈asp数据库二级联动下拉,以及下拉框二级联动数据库对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

二级联动asp下拉式列表菜单

总体要求是这样的吧:选择big的下拉菜单后,从数据库获得所选择大项内的二级选项,更新到二级下拉菜单中

一级菜单没得说,直接数据库读取

二级菜单就可以用两种方法实现,

1、先预读出所有二级选项及对应一级选项的classname,待选择一级菜单后利用js更换二级菜单的选项

2、选择一级菜单后,再从数据库读取二级菜单选项,更新到二级菜单,可以隐含一个页面作为刷新,这种办法比较繁琐些

script language=javascript

//最先从数据库读取所有选项值

//allSel数组形如:((北京,中关村,国贸,天安门,....),(上海,黄埔,....).....)

//(北京,中关村,国贸,天安门,....)----第一个为一级选项,后面为二级选项

var allSel=new Array();//储存所有一级、二级选项,定义成全局变量

var tmpSel=new Array();//临时选项 allSel.add(tmpSel) allSel 是数组的数组,即二维数组

%

dim bNew

rs.open "select * from big,small where big.bigclassName=small.bigclassname order by big.bigclassname",1,3,conn

bNew=rs("big.bigclassname")

response.write "tmpSel=new Array();"

response.write "tmpSel.add('" rs("big.bigclassname") "');"

do while not rs.eof

if bNewrs("big.bigclassname") then '新城市

response.write "allSel.add(tmpSel);"

response.write "tmpSel=new Array();"

response.write "tmpSel.add(" rs("big.bigclassname") ")"

end if

rsponse.write "tmpSel.add('" rs("small.smallclassname") "');" ‘加入二级菜单

rs.movenext

loop

rs.close

%

/script

一级菜单:select id=bigsel onchange=sel_chg(this)

%

rs.open "select * from big",conn,1,3

do while not rs.eof

response.write "option value=" rs("id") "" rs("bigclassname") "/option"

rs.movenext

loop

rs.close

%

/select

二级菜单select id=sseloption value=-1请选择.../option/select

js实现更新二级菜单

script language=javascript

function chgOption(op_arr){ //根据参数修改下拉菜单选项

var vOptions,iii;

var obj=document.all.ssel; //二级菜单obj

for(iii=0;iiiobj.length-1;iii++)obj.options.remove(0);//移除原二级菜单选项

for(iii=1;iiiop_arr.length;i++) { //iii=1

vOptions=document.createElement("option");

vOptions.value=iii;

vOptions.text=op_arr[iii];

obj.options.add(vOptions);

}

}

function sel_chg(obj){ //一级菜单选择后发起替换二级菜单

//获知是哪个选项被选中

var selIdx=obj.selectedIndex;

//根据之前的allSel替换二级菜单

chgOption(allSel[selIdx]);//注意这里调用allSel[selIdx]

}

/script

asp 下拉菜单的二级联动

我给你一个三级联动的程序,要解决两级就非常容易了。比如有一个表,名称为:人员表

id 学校 班级 姓名

1 中学 一班 王一

2 中学 三班 孙二

3 高中 二班 张三

你现在第一级选择是学校,第二级是班级

本页面为chaxun.asp

%

'此处加连接数据库语句省略

set conn=......

conn.open "...... "

sql= "select distinct 学校 from 人员表 "

set rs=conn.execute(sql)%

form id= "form1 " name= "form1 " method= "post " action= "chaxun.asp "

table width= "600 " border= "1 "

tr

td width= "179 " div align= "center " 学校 /div /td

td width= "405 "

select name= "xuexiao " id= "xuexiao " onchange= "chaxun.asp?xx= '+this.value "

option value= " " ==请选择学校== /option

%

if not rs.eof and not rs.bof then

do while not rs.eof%

option value= " %=rs( "学校 ")% " %if trim(rs( "学校 "))=trim(request( "xx ")) then% selected %end if% %=rs( "学校 ")% /option

%rs.movenext

loop

end if%

/select

/td

/tr

tr

td div align= "center " 班级 /div /td

td select name= "banji " id= "banji " onchange= "chaxun.asp?xx= %=request( "xx ")% bj= '+this.value "

option value= " " ==请选择班级== /option

%if request( "xx ") " " then

sql= "select distinct 班级 from 人员表 where 学校= ' "request( "xx ") " ' "

set rs1=conn.execute(sql)

if not rs1.eof and not rs1.bof then

do while not rs1.eof%

option value= " %=rs1( "班级 ")% " %if trim(rs1( "班级 "))=trim(request( "bj ")) then% selected %end if% %=rs( "班级 ")% /option

%rs1.movenext

loop

end if

end if%

/select /td

/tr

tr

td div align= "center " 姓名 /div /td

td select name= "name " id= "name " onchange= "chaxun.asp?xx= %=request( "xx ")% bj= %=request( "bj ")% name= '+this.value "

option value= " " ==请选择人员== /option

%if request( "xx ") " " and reqeust( "bj ") " " then

sql= "select 姓名 from 人员表 where 学校= ' "request( "xx ") " ' and 班级= ' "request( "bj ") " ' "

set rs2=conn.execute(sql)

if not rs2.eof and not rs2.bof then

do while not rs2.eof%

option value= " %=rs2( "姓名 ")% " %if trim(rs2( "姓名 "))=trim(request( "name ")) then% selected %end if% %=rs2( "姓名 ")% /option

%rs2.movenext

loop

end if

end if%

/select /td

/tr

/table

/form

%set conn=nothing%

具体没有测试,你试试看,不行再问我

ASP二级联动下拉菜单的问题如何解决?拜托各位了 3Q

asp数据库版二级联动下拉菜单 script language = "JavaScript" subcat=new Array(); % Dim i i=0 set rs2=server.createobject("adodb.recordset") sqltext="select * from [shopxp_stype]" rs2.open sqltext,conn,1,1 do while not rs2.eof % subcat[%=i%]=new Array("%=rs2("shopxpse_name")%","%=rs2("shopxpbe_id")%","%=rs2("shopxpse_id")%"); % i=i+1 rs2.movenext loop rs2.close % function changelocation(locationid) ...{ document.myform.shopxpse_id.length = 0; var locationid=locationid; var i; for (i=0;i subcat.length; i++) ...{ if (subcat[i][1] == locationid) ...{ //这句不是很理解 document.myform.shopxpse_id.options[document.myform.shopxpse_id.length] = new Option(subcat[i][0], subcat[i][2]); } } } /script body form name="myform" method="post" action="adproductshopxp_do.asp" OnSubmit="return checkkk()" table width="90%" border="0" cellpadding="0" cellspacing="5" bgcolor="#F1F3F5" tr td width="30%" align="right"选择商品的分类:/td td width="70%" 大类: select name="shopxpbe_id" size="1" id="shopxpbe_id" onChange="changelocation(document.myform.shopxpbe_id.options[document.myform.shopxpbe_id.selectedIndex].value)" option selected value="0"请选择大类/option %sql="select shopxpbe_id,shopxpbe_name from shopxp_btype" set rs=server.CreateObject("adodb.recordset") rs.open sql,conn,1,1 do while not rs.eof% option value="%=rs(0)%"%=rs(1)%/option %rs.movenext loop rs.close% /select 小类: select name="shopxpse_id" option selected value="0"请选择小类/option /select /td /tr 备注:数据库结构: shopxp_btype表:shopxpbe_id,shopxpbe_name shopxp_stype表:shopxpse_id,shopxpse_name,shopxpbe_id

asp 2级联动菜单,动态获取2级下拉列表,2级列表来自两个表,求该,问起解决再加100分

html

head

meta http-equiv="Content-Type" content="text/html; charset=gb2312"

title二级联动菜单/title

%

dim menu1list,menu2list

Set rs = Server.CreateObject("ADODB.Recordset")

sql = "SELECT * from Producedowntitle"

rs.OPEN sql,Conn,1,1

for i=1 t rs.recordcount

menu1list="|" rs(1)

rs.movenext

next

rs.close

Set rs = Server.CreateObject("ADODB.Recordset")

sql = "SELECT * from producemodel"

rs.OPEN sql,Conn,1,1

for i=1 t rs.recordcount

menu2list="|" rs(1)

rs.movenext

next

rs.close

set rs=nothing

%

/head

body onload="init()"

form action="" method="post" name="creator" enctype="multipart/form-data"

script language="javascript"

!--

var where = new Array(2);

function comefrom(loca,locacity) { this.loca = loca; this.locacity = locacity; }

where[0]= new comefrom("====属于类别====","选择二级");

where[1] = new comefrom("=====文 件=====","%=menu1list%");

where[2] = new comefrom("=====型号=====","%=menu2list%");

function select() {

with(document.creator.province) { var loca2 = options[selectedIndex].value; }

for(i = 0;i where.length;i ++) {

if (where[i].loca == loca2) {

loca3 = (where[i].locacity).split("|");

for(j = 0;j loca3.length;j++) { with(document.creator.city) { length = loca3.length; options[j].text = loca3[j]; options[j].value = loca3[j]; var loca4=options[selectedIndex].value;}}

break;

}}

document.creator.newlocation.value=loca2+loca4;

}

function init() {

with(document.creator.province) {

length = where.length;

for(k=0;kwhere.length;k++) { options[k].text = where[k].loca; options[k].value = where[k].loca; }

options[selectedIndex].text = where[0].loca; options[selectedIndex].value = where[0].loca;

}

with(document.creator.city) {

loca3 = (where[0].locacity).split("|");

length = loca3.length;

for(l=0;llength;l++) { options[l].text = loca3[l]; options[l].value = loca3[l]; }

options[selectedIndex].text = loca3[0]; options[selectedIndex].value = loca3[0];

}}

--

/script

一级 select name="province" onChange = "select()"/select 二级 select name="city" onChange = "select()"/select

显示 input type=text name="newlocation" maxlength=12 size=12 style="font-weight: bold" 

/form

/font

/body

/html

如果还不会百度hi我。

1 记得加上conn数据库代码

2 更改menu1list="|" rs(1)和menu2list="|" rs(1)为你想要的字段。

asp 下拉框 二级联动

有简单的 把你的 dropdownlist 里加一个autopostback="true"就好了 不过这样刷新的很烦 没有Ajax的好 学web的有哪个是不会ajax的 迟早要学的

asp数据库二级联动下拉的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于下拉框二级联动数据库、asp数据库二级联动下拉的信息别忘了在本站进行查找喔。

asp数据库二级联动下拉 JAVA数据库下拉列表联动dropdownlist下拉联动aspdropdownlist下拉联动dropdownlist控件联动dropdownlist二级联动dropdownlist实现省市联动dropdownlist控件设置默认下拉值java通过数据库做下拉列表JAVA数据库下拉列表联动java二级联动下拉列表
扫码二维码