javascript实现简单的二级联动

 更新时间:2015年03月19日 08:53:32   投稿:hebedich  
这篇文章主要介绍了javascript实现简单的二级联动,非常的实用,需要的朋友可以参考下

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

要想实现这个步骤,就要用到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=['朝阳‘,'海淀‘]    这个是连接哪个省份对应着哪个市的<span style="background-color: #888888;">市的</span>数组
     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>, + <br>                                               
     <option value = "1">海淀(lin[1])</option>
     //opt = <option value = "0">朝阳(lin[0])</option>, + <br>                                               
     <option value = "1">海淀(lin[1])</option> + <br>                                               
     <option value = "2">北京(lin[2])</option>
     }
     city.innerHTML = opt;
}
province.onchange = function(){
    choose();
}

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

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

以上所述就是本文的全部内容了,希望大家能够喜欢。

相关文章

  • TypeScript基本类型之typeof和keyof详解

    TypeScript基本类型之typeof和keyof详解

    typeof 在js中typeof是检查类型的,在ts中也有这个功能,下面这篇文章主要给大家介绍了关于TypeScript基本类型之typeof和keyof的相关资料,需要的朋友可以参考下
    2023-04-04
  • JS实现点击Radio动态更新table数据

    JS实现点击Radio动态更新table数据

    这篇文章主要介绍了JS实现点击Radio动态更新table数据的相关资料,需要的朋友可以参考下
    2017-07-07
  • javaScript 页面自动加载事件详解

    javaScript 页面自动加载事件详解

    本篇文章主要是对javaScript页面自动加载事件进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助
    2014-02-02
  • javasciprt下jquery函数$.post执行无响应的解决方法

    javasciprt下jquery函数$.post执行无响应的解决方法

    这篇文章主要介绍了javasciprt下jquery函数$.post执行无响应的解决方法,需要的朋友可以参考下
    2014-03-03
  • 7个Javascript地图脚本整理

    7个Javascript地图脚本整理

    7款JavaScript地图脚本, 大多数都是基于Google地图,也有使用jQuery实现的。
    2009-10-10
  • axios拦截器机制的实现原理详解

    axios拦截器机制的实现原理详解

    axios 不仅提供了一套跨平台请求,另外还提供了“拦截器”这一中间件机制,方便你在请求之前、响应之后做些操作处理,本文给大家详细介绍了axios 拦截器机制是如何实现的,需要的朋友可以参考下
    2024-05-05
  • BootStrap实现带关闭按钮功能

    BootStrap实现带关闭按钮功能

    这篇文章主要介绍了BootStrap实现带关闭按钮功能,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-02-02
  • JS实现音乐钢琴特效

    JS实现音乐钢琴特效

    这篇文章主要为大家详细介绍了JS实现音乐钢琴特效,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-01-01
  • 浅谈js算法和流程控制

    浅谈js算法和流程控制

    代码整体结构是执行速度的决定因素之一,代码量少不一定运行速度快,代码量多也不一定运行速度慢。本篇文章将对js的算法和流程控制进行介绍,下面跟着小编一起来看下吧
    2016-12-12
  • echarts自定义tooltip中的内容代码示例

    echarts自定义tooltip中的内容代码示例

    在ECharts中,通过formatter函数自定义图例样式,可以实现更灵活的图表展示,满足特定的视觉需求,这篇文章主要介绍了echarts自定义tooltip中内容的相关资料,需要的朋友可以参考下
    2024-10-10

最新评论