利用JS实现一个简单的二级联动菜单

前几天在看js的相关内容,所以就简单写了一个二级联动菜单。分享一下。

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4     <meta charset="UTF-8">
 5     <title>JS实现二级联动菜单</title>
 6 </head>
 7 <body>
 8     <form name="form1" method="post" action="">
 9         省份:<select name="province" id="province" onchange="changeSelect(this.selectedIndex)"></select>
10         地区:<select name="city" id="city"></select>
11 
12     </form>
13 </body>
14 </html>
15 <script type="text/javascript">
16     var arr_province = ["请选择省/城市","北京市","上海市","天津市","重庆市","深圳市","广东省"];
17     var arr_city = [
18                     ["请选择城市/地区"],
19                     ["东城区","西城区","朝阳区","宣武区","昌平区","大兴区","丰台区","海淀区"],
20                     ['宝山区','长宁区','丰贤区', '虹口区','黄浦区','青浦区','南汇区','徐汇区','卢湾区'],
21                     ['和平区', '河西区', '南开区', '河北区', '河东区', '红桥区', '塘古区', '开发区'],
22                     ['俞中区', '南岸区', '江北区', '沙坪坝区', '九龙坡区', '渝北区', '大渡口区', '北碚区'],
23                     ['福田区', '罗湖区', '盐田区', '宝安区', '龙岗区', '南山区', '深圳周边'],
24                     ['广州市','惠州市','汕头市','珠海市','佛山市','中山市','东莞市']
25                 ];
26     //网页加载完成,初始化菜单
27     window.onload = init;//传入函数地址
28     function init(){
29         //首先获取对象
30         var province = document.form1.province;
31         var city = document.form1.city;
32 
33         //指定省份中<option>标记的个数
34         province.length = arr_province.length;
35 
36         //循环将数组中的数据写入<option>标记中
37         for(var i=0;i<arr_province.length;i++){
38             province.options[i].text = arr_province[i];
39             province.options[i].value = arr_province[i];
40         }
41 
42         //修改省份列表的默认选择项
43         var index = 0;
44         province.selectedIndex = index;
45 
46         //指定城市中<option>标记的个数
47         city.length = arr_city[index].length;
48 
49         //循环将数组中的数据写入<option>标记中
50         for (var j = 0; j<arr_city[index].length;j++) {
51             city.options[j].text = arr_city[index][j];
52             city.options[j].value = arr_city[index][j];
53         }
54 
55     }
56 
57     function  changeSelect(index){
58         //选择对象
59         var city = document.form1.city;
60         //修改省份列表的选择项
61         province.selectedIndex = index;
62 
63         //指定城市中<option>标记的个数
64         city.length = arr_city[index].length;
65 
66         //循环将数组中的数据写入<option>标记中
67         for (var j = 0; j<arr_city[index].length;j++) {
68             city.options[j].text = arr_city[index][j];
69             city.options[j].value = arr_city[index][j];
70         }
71     }
72 
73 </script>

 

posted @ 2017-04-05 12:08  于果alpha  阅读(29310)  评论(1编辑  收藏