JavaScript实现三级联动菜单实例代码

 更新时间:2017年06月26日 08:58:01   作者:小朱  
这篇文章主要为大家详细介绍了JavaScript实现三级联动菜单实例代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文给大家分享的是使用javascript实现的一个简单的三级联动菜单,非常简单实用,有需要的小伙伴过来参考下吧。

用javascript制作的一个简单三级联动,非常简单实用

<!DOCTYPE html>

<html>
 <head>
  <meta charset="utf-8">
  <title></title>
 </head>
 <body>
  省:
  <select style="width: 100px;" id="pre" onchange="chg(this);">
   <option value="-1">请选择</option>
  </select>
  市:
  <select style="width: 100px;" id="city" onchange="chg2(this)" ;></select>
  区:
  <select style="width: 100px;" id="area"></select>
 </body>
 <script>

   //声明省
  var pres = ["北京", "上海", "山东"]; //直接声明Array
   //声明市
  var cities = [

   ["东城", "昌平", "海淀"],
   ["浦东", "高区"],
   ["济南", "青岛"]
  ];

  var areas = [

    [
     ["东城1", "东城2", "东城3"],
     ["昌平1", "昌平2", "昌平3"],
     ["海淀1", "海淀2", "海淀3"]
    ],

    [
     ["浦东1", "浦东2", "浦东3"],
     ["高区1", "高区2", "高区3"]

    ],

    [
     ["济南1", "济南2"],
     ["青岛1", "青岛2"]
    ]

   ]

   //设置一个省的公共下标

  var pIndex = -1;
  var preEle = document.getElementById("pre");
  var cityEle = document.getElementById("city");
  var areaEle = document.getElementById("area");
   //先设置省的值

  for (var i = 0; i < pres.length; i++) {
   //声明option.<option value="pres[i]">Pres[i]</option>
   var op = new Option(pres[i], i);
   //添加
   preEle.options.add(op);
  }

  function chg(obj) {
   if (obj.value == -1) {
    cityEle.options.length = 0;
    areaEle.options.length = 0;
   }

   //获取值
   var val = obj.value;
   pIndex = obj.value;
   //获取ctiry
   var cs = cities[val];
   //获取默认区
   var as = areas[val][0];
   //先清空市
   cityEle.options.length = 0;
   areaEle.options.length = 0;
   for (var i = 0; i < cs.length; i++) {
    var op = new Option(cs[i], i);
    cityEle.options.add(op);

   }

   for (var i = 0; i < as.length; i++) {
    var op = new Option(as[i], i);
    areaEle.options.add(op);

   }

  }

  function chg2(obj) {
   var val = obj.selectedIndex;
   var as = areas[pIndex][val];
   areaEle.options.length = 0;
   for (var i = 0; i < as.length; i++) {

    var op = new Option(as[i], i);

    areaEle.options.add(op);

   }

  }

 </script>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 详解写好JS条件语句的5条守则

    详解写好JS条件语句的5条守则

    这篇文章主要介绍了详解写好JS条件语句的5条守则,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-02-02
  • JS 拦截全局ajax请求实例解析

    JS 拦截全局ajax请求实例解析

    这篇文章主要介绍了JS 拦截全局ajax请求实例解析的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-11-11
  • 微信小程序实现图片压缩

    微信小程序实现图片压缩

    这篇文章主要为大家详细介绍了微信小程序实现图片压缩,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-12-12
  • 兼容IE和FF的js脚本代码小结(比较常用)

    兼容IE和FF的js脚本代码小结(比较常用)

    做BS开发就难免会用到javascript,而每个浏览器对javascript的支持有不同。这就需要我们程序员去兼容他们下面是兼容IE和FF的js脚本做法和分解(部分选自网上,经本人整理),希望对大家有帮助。
    2010-12-12
  • 一文带你简单封装JS下的异步任务对象

    一文带你简单封装JS下的异步任务对象

    我们在烧水的过程中去干了别的事情,就属于异步模式,异步模式中不会等待异步任务的结束才开始执行下一个同步的任务,都是开启过后就立即执行下一个任务,下面这篇文章主要给大家介绍了如何通过一文带你简单封装JS下的异步任务对象的相关资料,需要的朋友可以参考下
    2022-11-11
  • 2012世界末日倒计时代码 原来没事虚惊一场

    2012世界末日倒计时代码 原来没事虚惊一场

    这款时世界末日倒计时源代码,程序上有JS控制器,是用于网页中显示的倒计时器,自己可以设定世界末日的开始时间,网页倒计时世界末日源代码直接复制就可以用
    2012-12-12
  • JS实现checkbox互斥(单选)功能示例

    JS实现checkbox互斥(单选)功能示例

    这篇文章主要介绍了JS实现checkbox互斥(单选)功能,涉及JavaScript针对页面元素属性的判断及动态操作相关实现技巧,需要的朋友可以参考下
    2019-05-05
  • 微信小程序自定义可搜索的picker组件示例详解

    微信小程序自定义可搜索的picker组件示例详解

    这篇文章主要介绍了微信小程序自定义可搜索的picker组件,主要包括自定义可搜索的picker组件的代码以及调用实例,这里的搜索框使用的是vant微信小程序组件库,picker使用的微信小程序的原生组件,需要的朋友可以参考下
    2022-06-06
  • ASP 过滤数组重复数据函数(加强版)

    ASP 过滤数组重复数据函数(加强版)

    asp 不重复数组数据的实现代码,比上个版本,更细,更能更强,大家可以根据需要选择。
    2010-05-05
  • JavaScript中通过闭包解决只能取得包含函数中任何变量最后一个值的问题

    JavaScript中通过闭包解决只能取得包含函数中任何变量最后一个值的问题

    JavaScript中解决闭包只能取得包含函数中任何变量最后一个值的问题
    2010-08-08

最新评论