?1?<!DOCTYPE?HTML?PUBLIC?"-//W3C//DTD?HTML?4.0?Transitional//EN">
?2?<HTML>
?3?<HEAD>
?4?<TITLE>?New?Document?</TITLE>
?5?<META?NAME="Generator"?CONTENT="EditPlus">
?6?<META?NAME="Author"?CONTENT="">
?7?<META?NAME="Keywords"?CONTENT="">
?8?<META?NAME="Description"?CONTENT="">
?9?<script?language="JavaScript"?type="text/javascript">
10?????//定義了城市的二維數(shù)組,里面的順序跟省份的順序是相同的。通過selectedIndex獲得省份的下標(biāo)值來得到相應(yīng)的城市數(shù)組
11?????var?city=[
12?????["北京","天津","上海","重慶"],
13?????["南京","蘇州","南通","常州"],
14?????["福州","福安","龍巖","南平"],
15?????["廣州","潮陽","潮州","澄海"],
16?????["蘭州","白銀","定西","敦煌"]
17?????];
18?
19?????function?getCity(){
20?????????//獲得省份下拉框的對(duì)象
21?????????var?sltProvince=document.form1.province;
22?????????//獲得城市下拉框的對(duì)象
23?????????var?sltCity=document.form1.city;
24?????????
25?????????//得到對(duì)應(yīng)省份的城市數(shù)組
26?????????var?provinceCity=city[sltProvince.selectedIndex?-?1];
27?
28?????????//清空城市下拉框,僅留提示選項(xiàng)
29?????????sltCity.length=1;
30?
31?????????//將城市數(shù)組中的值填充到城市下拉框中
32?????????for(var?i=0;i<provinceCity.length;i++){
33?????????????sltCity[i+1]=new?Option(provinceCity[i],provinceCity[i]);
34?????????}
35?????}
36?</script>
37?</HEAD>
38?
39?<BODY>
40?<FORM?METHOD=POST?ACTION=""?name="form1">
41?????????<SELECT?NAME="province"?onChange="getCity()">
42?????????????<OPTION?VALUE="0">請(qǐng)選擇所在省份?</OPTION>
43?????????????<OPTION?VALUE="直轄市">直轄市?</OPTION>
44?????????????<OPTION?VALUE="江蘇省">江蘇省?</OPTION>
45?????????????<OPTION?VALUE="福建省">福建省?</OPTION>
46?????????????<OPTION?VALUE="廣東省">廣東省?</OPTION>
47?????????????<OPTION?VALUE="甘肅省">甘肅省?</OPTION>
48?????????</SELECT>
49?????????<SELECT?NAME="city">
50?????????????<OPTION?VALUE="0">請(qǐng)選擇所在城市?</OPTION>
51?????????</SELECT>
52?????</FORM>
53?</BODY>
54?</HTML>
55?
?2?<HTML>
?3?<HEAD>
?4?<TITLE>?New?Document?</TITLE>
?5?<META?NAME="Generator"?CONTENT="EditPlus">
?6?<META?NAME="Author"?CONTENT="">
?7?<META?NAME="Keywords"?CONTENT="">
?8?<META?NAME="Description"?CONTENT="">
?9?<script?language="JavaScript"?type="text/javascript">
10?????//定義了城市的二維數(shù)組,里面的順序跟省份的順序是相同的。通過selectedIndex獲得省份的下標(biāo)值來得到相應(yīng)的城市數(shù)組
11?????var?city=[
12?????["北京","天津","上海","重慶"],
13?????["南京","蘇州","南通","常州"],
14?????["福州","福安","龍巖","南平"],
15?????["廣州","潮陽","潮州","澄海"],
16?????["蘭州","白銀","定西","敦煌"]
17?????];
18?
19?????function?getCity(){
20?????????//獲得省份下拉框的對(duì)象
21?????????var?sltProvince=document.form1.province;
22?????????//獲得城市下拉框的對(duì)象
23?????????var?sltCity=document.form1.city;
24?????????
25?????????//得到對(duì)應(yīng)省份的城市數(shù)組
26?????????var?provinceCity=city[sltProvince.selectedIndex?-?1];
27?
28?????????//清空城市下拉框,僅留提示選項(xiàng)
29?????????sltCity.length=1;
30?
31?????????//將城市數(shù)組中的值填充到城市下拉框中
32?????????for(var?i=0;i<provinceCity.length;i++){
33?????????????sltCity[i+1]=new?Option(provinceCity[i],provinceCity[i]);
34?????????}
35?????}
36?</script>
37?</HEAD>
38?
39?<BODY>
40?<FORM?METHOD=POST?ACTION=""?name="form1">
41?????????<SELECT?NAME="province"?onChange="getCity()">
42?????????????<OPTION?VALUE="0">請(qǐng)選擇所在省份?</OPTION>
43?????????????<OPTION?VALUE="直轄市">直轄市?</OPTION>
44?????????????<OPTION?VALUE="江蘇省">江蘇省?</OPTION>
45?????????????<OPTION?VALUE="福建省">福建省?</OPTION>
46?????????????<OPTION?VALUE="廣東省">廣東省?</OPTION>
47?????????????<OPTION?VALUE="甘肅省">甘肅省?</OPTION>
48?????????</SELECT>
49?????????<SELECT?NAME="city">
50?????????????<OPTION?VALUE="0">請(qǐng)選擇所在城市?</OPTION>
51?????????</SELECT>
52?????</FORM>
53?</BODY>
54?</HTML>
55?
這段代碼比較簡單。
如果對(duì)js不大熟悉,可以看看下面關(guān)于js處理select對(duì)象的內(nèi)容:
1、使用selectedIndex屬性獲取當(dāng)前選項(xiàng)的索引
??? 下拉框的選項(xiàng)是一個(gè)線性數(shù)組,每個(gè)選項(xiàng)都有一個(gè)索引,selectedIndex表示當(dāng)前被選中的選項(xiàng)的索引號(hào)。結(jié)合options屬性,可以得到被選中的option對(duì)象,從而對(duì)其做進(jìn)一步的處理。當(dāng)下拉框可多選時(shí),selectedIndex屬性返回第一個(gè)被選中的索引。
??? selectedIndex是個(gè)只讀的屬性,想把通過索引指定的下拉框的項(xiàng)設(shè)置為選中狀態(tài),可以設(shè)置option對(duì)象的selected=true來實(shí)現(xiàn)。
2、為select對(duì)象添加一個(gè)選項(xiàng)
??? sltCity[i+1]=new?Option(provinceCity[i],provinceCity[i]);
??? new?Option(provinceCity[i],provinceCity[i])表示創(chuàng)建一個(gè)值為provinceCity[i],文本為provinceCity[i]的option對(duì)象,sltCity是頁面上的city對(duì)象,i+1指定新添選項(xiàng)的位置。
3、清空一個(gè)select對(duì)象
??? 要將下拉框的所有選項(xiàng)刪除有兩種方法,
??? 第一種方法就是遍歷刪除:
???
1?var?l=myselect.length;
2?for(var?i=0;i<l;i++){
3????myselect.options[i]=null;
4?}
2?for(var?i=0;i<l;i++){
3????myselect.options[i]=null;
4?}
??? 第二種方法比較簡單,因此一般都使用此方法:
myselect.length=0;