首页 > 编程语言 > 详细

javascript二级联动

时间:2015-03-18 21:43:50      阅读:345      评论:0      收藏:0      [点我收藏+]

二级联动在一般的网页中随处可见,一般是地址,比如点击浙江省,随后出现的是杭州市,嘉兴市;点击北京省出现的是朝阳,海淀,而不是出现杭州,嘉兴。

要想实现这个步骤,就要用到javascript来实现。其中原理用到onchange时间。

首先,onchange 事件会在域的内容改变时发生。支持该事件的 JavaScript 对象:fileUpload, select, text, textarea,我们在实现二级联动中正是用到select来完成。

以下是HTML代码,先设置一个select为省,第二个select为市,但是市我们在js中用数组将其与省份连接。

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>javascript二级联动</title>
</head>
<body>
<select id="province">
    <option value="-1">省</option>
    <option value="0">北京</option>
    <option value="1">浙江</option>
</select>
<select id="city">
</select>
<script src="../js/province.js"></script>
</body>
</html>

 以下是js代码

var province = document.getElementById("province");
var city = document.getElementById("city");
var area = [
[‘朝阳‘,‘海淀‘,‘北京‘], //第0个area的数组。0{0,1,2}
[‘杭州‘,‘海宁‘]         //第1个area的数组, 1{0.1}
];

 function choose(){
     var opt = "";

     var len = area[province.value];  //如果选择北京0,那么,len=[’朝阳‘,’海淀‘]    这个是连接哪个省份对应着哪个市的市的数组
     if(province.value == ‘-1‘){     //因为select的value为-1的时候是‘省’这个字,而不是北京,所以,我们选择这个省的时候对应着让他的市为空
         city.innerHTML = opt;
      
     }
     for(var i = 0;i < len.length; i++){  //area的数组个数for(i = 0;i < 3; i++)
        opt = opt + ‘<option value ="‘+ i +‘">  ‘+ len[i]+ ‘</option>‘  //opt = "" + <option value = "0">朝阳(lin[0])</option>,
                                                                        //opt = <option value = "0">朝阳(lin[0])</option>, + 
                                               <option value = "1">海淀(lin[1])</option> //opt = <option value = "0">朝阳(lin[0])</option>, +
                                               <option value = "1">海淀(lin[1])</option> +
                                               <option value = "2">北京(lin[2])</option> } city.innerHTML = opt; } province.onchange = function(){ choose(); }

 

二级联动在一般的网页中随处可见,一般是地址,比如点击浙江省,随后出现的是杭州市,嘉兴市;点击北京省出现的是朝阳,海淀,而不是出现杭州,嘉兴。

要想实现这个步骤,就要用到javascript来实现。其中原理用到onchange时间。

javascript二级联动

原文:http://www.cnblogs.com/shenq/p/4348706.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!