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


Posted in Javascript onJune 26, 2017

本文给大家分享的是使用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>

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

Javascript 相关文章推荐
jQuery后代选择器用法实例
Dec 23 Javascript
Node.js和MongoDB实现简单日志分析系统
Apr 25 Javascript
基于js实现微信发送好友如何分享到朋友圈、微博
Nov 30 Javascript
JS实现的适合做faq或menu滑动效果示例
Nov 17 Javascript
vue封装第三方插件并发布到npm的方法
Sep 25 Javascript
vue2组件之select2调用的示例代码
Oct 12 Javascript
Element UI框架中巧用树选择器的实现
Dec 12 Javascript
手把手带你封装一个vue component第三方库
Feb 14 Javascript
Javascript删除数组里的某个元素
Feb 28 Javascript
详解在vue-cli3.0中自定css、js和图片的打包路径
Aug 26 Javascript
vue项目实现减少app.js和vender.js的体积操作
Nov 12 Javascript
80行代码写一个Webpack插件并发布到npm
May 24 Javascript
jQuery实现frame之间互通的方法
Jun 26 #jQuery
详解基于Bootstrap+angular的一个豆瓣电影app
Jun 26 #Javascript
jQuery回调方法使用示例
Jun 26 #jQuery
Iscrool下拉刷新功能实现方法(推荐)
Jun 26 #Javascript
js 简易版滚动条实例(适用于移动端H5开发)
Jun 26 #Javascript
浅谈JS对html标签的属性的干预以及对CSS样式表属性的干预
Jun 25 #Javascript
浅谈JS如何实现真正的对象常量
Jun 25 #Javascript
You might like
全国FM电台频率大全 - 22 重庆市
2020/03/11 无线电
自动生成文章摘要的代码[PHP 版本]
2007/03/20 PHP
php header Content-Type类型小结
2011/07/03 PHP
php中获取主机名、协议及IP地址的方法
2014/11/18 PHP
phpmyadmin提示The mbstring extension is missing的解决方法
2014/12/17 PHP
PHP使用MPDF类生成PDF的方法
2015/12/08 PHP
thinkphp5实现微信扫码支付
2019/12/23 PHP
获取JavaScript用户自定义类的类名称的代码
2007/03/08 Javascript
jquery之empty()与remove()区别说明
2010/09/10 Javascript
从零开始学习jQuery (二) 万能的选择器
2010/10/01 Javascript
js模拟点击事件实现代码
2012/11/06 Javascript
JS获取鼠标坐标的实例方法
2013/07/18 Javascript
最简单的JavaScript验证整数、小数、实数、有效位小数正则表达式
2015/04/17 Javascript
如何实现移动端浏览器不显示 pc 端的广告
2015/10/15 Javascript
bootstrap提示标签、提示框实现代码
2016/12/28 Javascript
初探nodeJS
2017/01/24 NodeJs
使用jQuery监听扫码枪输入并禁止手动输入的实现方法(推荐)
2017/03/21 jQuery
如何给ss bash 写一个 WEB 端查看流量的页面
2017/03/23 Javascript
JS开发中百度地图+城市联动实现实时触发查询地址功能
2017/04/13 Javascript
微信小程序之网络请求简单封装实例详解
2017/06/28 Javascript
JavaScript调用模式与this关键字绑定的关系
2018/04/21 Javascript
微信小程序进入广告实现代码实例
2019/09/19 Javascript
jQuery实现简单聊天室
2020/02/08 jQuery
Django集成百度富文本编辑器uEditor攻略
2014/07/04 Python
详解Django中的过滤器
2015/07/16 Python
Java多线程编程中ThreadLocal类的用法及深入
2016/06/21 Python
基于Django的python验证码(实例讲解)
2017/10/23 Python
Python实现简易过滤删除数字的方法小结
2019/01/09 Python
详解Python列表赋值复制深拷贝及5种浅拷贝
2019/05/15 Python
python保留小数位的三种实现方法
2020/01/07 Python
goodhealth官方海外旗舰店:新西兰国民营养师
2017/12/15 全球购物
《掌声》教学反思
2014/02/23 职场文书
2015年全国“爱牙日”宣传活动总结
2015/03/23 职场文书
2015年七一建党节活动方案
2015/05/05 职场文书
小学2016年第十八届推普周活动总结
2016/04/05 职场文书
实操Python爬取觅知网素材图片示例
2021/11/27 Python