王朝知道
分享
 
 
 

求一三级联动JS代码

王朝知道·作者佚名  2009-09-09  
宽屏版  字体: |||超大  
 
分类: 电脑/网络 >> 程序设计 >> 其他编程语言
 
问题描述:

<!--#include file="check.asp"-->

<%dim count

set ps=server.createobject("adodb.recordset")

ps.open "select * from smallclass",conn,1,1%>

<script language = "JavaScript">

var onecount;

onecount=0;

subcat = new Array();

<%

count = 0

do while not ps.eof

%>

subcat[<%=count%>] = new Array("<%= trim(ps("smallclass"))%>","<%= ps("bigclassid")%>","<%= ps("smallclassid")%>");

<%

count = count + 1

ps.movenext

loop

ps.close

%>

onecount=<%=count%>;

function changelocation(locationid)

{

document.myform.smallclassid.length = 0;

var locationid=locationid;

var i;

for (i=0;i < onecount; i++)

{

if (subcat[i][1] == locationid)

{

document.myform.smallclassid.options[document.myform.smallclassid.length] = new Option(subcat[i][0], subcat[i][2]);

}

}

}

</script>

<%

ps.open "select * from bigclass",conn,1,1

if ps.eof and ps.bof then%>

<font color="#FF0000">请先添加栏目</font>

<%response.end

else

%>

一级信息:

<select name="bigclassid" size="1" id="bigclassid" onChange="changelocation(document.myform.bigclassid.options[document.myform.bigclassid.selectedIndex].value)">

<option selected value="<%=ps("bigclassid")%>"><%=trim(ps("bigclass"))%></option>

<% dim selclass

selclass=ps("bigclassid")

ps.movenext

do while not ps.eof

%>

<option value="<%=ps("bigclassid")%>"><%=trim(ps("bigclass"))%></option>

<%

ps.movenext

loop

end if

ps.close

%>

</select>

二级信息:

<select name="smallclassid">

<%ps.open "select * from smallclass where bigclassid="&selclass ,conn,1,1

if not(ps.eof and ps.bof) then

%>

<option selected value="<%=ps("smallclassID")%>"><%=ps("smallclass")%></option>

<% ps.movenext

do while not ps.eof%>

<option value="<%=ps("smallclassID")%>"><%=ps("smallclass")%></option>

<% ps.movenext

loop

end if

ps.close

set ps = nothing

%>

</select>

如何将这个二级改成三级联动?

参考答案:

<form method="post" name="myform">

<select name="classid" onchange="select()"></select>

<select name="suid"></select>

<select name="gid"></select>

</form>

<script language="javascript">

<!--

var arrText = new Array(5);

var arrValue = new Array(arrText.length);

function objSetOption(select1, select2, select3) {

this.select1 = select1;

this.select2 = select2;

this.select3 = select3;

}

arrText[0]= new objSetOption("选择1:", "选择2_1:,选择2_2:", "选择3_1:,选择3_2:");

arrText[1] = new objSetOption("论文:1", "语文:1,数学:2,英语:3", "初中:2,高中:3");

arrText[2] = new objSetOption("例题:2", "显示b2_1:值b2_1,显示b2_2:值b2_2", "显示b3_1:值b3_1,显示b3_2:值b3_2");

arrText[3] = new objSetOption("显示c:值c", "显示c2_1:值c2_1,显示c2_2:值c2_2", "显示c3_1:值c3_1,显示c3_2:值c3_2");

arrText[4] = new objSetOption("显示d:值d", "显示d2_1:值d2_1,显示d2_2:值d2_2", "显示d3_1:值d3_1,显示d3_2:值d3_2");

arrText[5] = new objSetOption("显示e:值e", "显示e2_1:值e2_1,显示e2_2:值e2_2", "显示e3_1:值e3_1,显示e3_2:值e3_2");

function select(sValue1, sValue2, sValue3) {

var eltSelect1 = document.myform.classid;

var eltSelect2 = document.myform.suid;

var eltSelect3 = document.myform.gid;

var arrSelect1, arrSelect2, arrSelect3;

var arrData1, arrData2, arrData3;

with(eltSelect1) {

var strSelect = options[selectedIndex].value;

}

for(i = 0;i < arrText.length;i ++) {

arrSelect1 = arrText[i].select1;

arrData1 = arrSelect1.split(":");

if (arrData1[1] == strSelect) {

arrSelect2 = (arrText[i].select2).split(",");

for(j = 0;j < arrSelect2.length;j++) {

arrData2 = arrSelect2[j].split(":");

with(eltSelect2) {

length = arrSelect2.length;

options[j].text = arrData2[0];

options[j].value = arrData2[1];

if (arrData2[1] == sValue2) {

options[j].selected = true;

}

}

}

arrSelect3 = (arrText[i].select3).split(",");

for(j = 0;j < arrSelect3.length;j++) {

arrData3 = arrSelect3[j].split(":");

with(eltSelect3) {

length = arrSelect3.length;

options[j].text = arrData3[0];

options[j].value = arrData3[1];

if (arrData3[1] == sValue3) {

options[j].selected = true;

}

}

}

break;

}

}

}

function init(sValue1, sValue2, sValue3) {

var eltSelect1 = document.myform.classid;

var eltSelect2 = document.myform.suid;

var eltSelect3 = document.myform.gid;

var arrSelect1, arrSelect2, arrSelect3;

var arrData1, arrData2, arrData3;

if (eltSelect1 != undefined && eltSelect2 != undefined && eltSelect3 != undefined) {

with(eltSelect2) {

arrSelect2 = (arrText[0].select2).split(",");

length = arrSelect2.length;

for(i = 0;i < length;i ++) {

arrData2 = arrSelect2[i].split(":");

options[i].text = arrData2[0];

options[i].value = arrData2[1];

}

}

with(eltSelect3) {

arrSelect3 = (arrText[0].select3).split(",");

length = arrSelect3.length;

for(i = 0;i < length;i ++) {

arrData3 = arrSelect3[i].split(":");

options[i].text = arrData3[0];

options[i].value = arrData3[1];

}

}

with(eltSelect1) {

length = arrText.length;

for(i = 0;i < arrText.length;i ++) {

arrSelect1 = arrText[i].select1;

arrData1 = arrSelect1.split(":");

options[i].text = arrData1[0];

options[i].value = arrData1[1];

if (arrData1[1] == sValue1) {

options[i].selected = true;

select("", sValue2, sValue3);

}

}

}

}

}

//init();

//默认初始化

init("2", "值b2_1", "值b3_2");

//更改后默认初始化

// -->

</script>

小贴士:① 若网友所发内容与教科书相悖,请以教科书为准;② 若网友所发内容与科学常识、官方权威机构相悖,请以后者为准;③ 若网友所发内容不正确或者违背公序良俗,右下举报/纠错。
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
如何用java替换看不见的字符比如零宽空格&#8203;十六进制U+200B
 干货   2023-09-10
网页字号不能单数吗,网页字体大小为什么一般都是偶数
 干货   2023-09-06
java.lang.ArrayIndexOutOfBoundsException: 4096
 干货   2023-09-06
Noto Sans CJK SC字体下载地址
 干货   2023-08-30
window.navigator和navigator的区别是什么?
 干货   2023-08-23
js获取referer、useragent、浏览器语言
 干货   2023-08-23
oscache遇到404时会不会缓存?
 干货   2023-08-23
linux下用rm -rf *删除大量文件太慢怎么解决?
 干货   2023-08-08
刀郎新歌破世界纪录!
 娱乐   2023-08-01
js实现放大缩小页面
 干货   2023-07-31
生成式人工智能服务管理暂行办法
 百态   2023-07-31
英语学习:过去完成时The Past Perfect Tense举例说明
 干货   2023-07-31
Mysql常用sql命令语句整理
 干货   2023-07-30
科学家复活了46000年前的虫子
 探索   2023-07-29
英语学习:过去进行时The Past Continuous Tense举例说明
 干货   2023-07-28
meta name="applicable-device"告知页面适合哪种终端设备:PC端、移动端还是自适应
 干货   2023-07-28
只用css如何实现打字机特效?
 百态   2023-07-15
css怎么实现上下滚动
 干货   2023-06-28
canvas怎么画一个三角形?
 干货   2023-06-28
canvas怎么画一个椭圆形?
 干货   2023-06-28
canvas怎么画一个圆形?
 干货   2023-06-28
canvas怎么画一个正方形?
 干货   2023-06-28
中国河南省郑州市金水区蜘蛛爬虫ip大全
 干货   2023-06-22
javascript简易动态时间代码
 干货   2023-06-20
感谢员工的付出和激励的话怎么说?
 干货   2023-06-18
 
>>返回首页<<
 
 
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
© 2005- 王朝网络 版权所有