<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>三級聯動</title>
</head>
<body >
<h5><center>各學期對應課程</center></h5>
<!--選項改變事件onchange調用change1(this)函數,實現 學年 與 學期 之間的聯動-->
<center>學年 <select id='year' onchange='change1(this)'>
<option value='請選擇'>請選擇</option>
<option value='第一學年'>第一學年</option>
<option value='第二學年'>第二學年</option>
</select>
<!--選項改變事件onchange調用change2(this)函數,實現 學期 與 課程 之間的聯動-->
學期 <select id='term' onchange='change2(this)'>
<option value='請選擇' >請選擇</option>
</select>
課程 <select id='course' >
<option value='請選擇'>請選擇</option>
</select></center>
</body>
<script>
//獲取學期對象
var term = document.getElementById('term');
//獲取課程對象
var course = document.getElementById('course');
//創建change1(obj1)函數,其中參數obj1是獲取 學年 的option選項中的value值
function change1(obj1){
//獲取obj1的值
var o1 = obj1.value;
//創建二維數組存放學年對應的學期
var array1 = new Array();
array1['第一學年']=['第一學期','第二學期'];
array1['第二學年']=['第一學期','第二學期'];
//保留學期下拉列表的第一項
term.options.length=1;
//遍歷數組
for(var i=0; i<array1[o1].length;i++){
//如果是第一學年,則將第一學期的value值設為0,第二學期的value值設為1;
if(o1=='第一學年'){
//new Option(”顯示內容”,“值”)
var opt1 = new Option(array1[o1][i],i);
}
//如果是第二學年,則將第一學期的value值設為2,第二學期的value值設為3;這樣設置其value值的目的是好與課程對應的數組行下標一一對應。
else{
opt1 = new Option(array1[o1][i],i+2);
}
//動態添加選項opt1到term中,得到下拉列表項
term.options.add(opt1);
}
}
//創建change2(obj2)函數,其中參數obj2是獲取 學期 的option選項中的value值
function change2(obj2){
//獲取obj2的值
var o2 = obj2.value;
//創建二維數組array2存放學期對應的課程
var array2 = new Array();
array2[0]=['HTML','Java','SqlServer基礎','C#'];
array2[1]=['javascript','.Net','SqlServer高級','JSP'];
array2[2]=['Struts','ASP.NET','Ajax'];
array2[3]=['Spring','Hibernate'];
//保留學期下拉列表的第一項
course.options.length=1;
//遍歷數組,將選項opt2到course中,得到下拉列表項
for(var i in array2[o2]){
var opt2 = new Option(array2[o2][i],i);
course.options.add(opt2);
}
}
</script>
</html>
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com