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 相关文章推荐
Firefox和IE浏览器兼容JS脚本写法小结
Jul 07 Javascript
jQuery 操作XML入门
Dec 25 Javascript
javascript学习笔记(十八) 获得页面中的元素代码
Jun 20 Javascript
replace()方法查找字符使用示例
Oct 28 Javascript
javascript框架设计之框架分类及主要功能
Jun 23 Javascript
JS实战篇之收缩菜单表单布局
Dec 10 Javascript
jQuery弹出窗口打开链接的实现代码
Dec 24 Javascript
JavaScript中offsetWidth的bug及解决方法
May 17 Javascript
Vue.js实例方法之生命周期详解
Jul 03 Javascript
在AngularJs中设置请求头信息(headers)的方法及不同方法的比较
Sep 04 Javascript
Node.js API详解之 zlib模块用法分析
May 19 Javascript
JavaScript 生成唯一ID的几种方式
Feb 19 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
php echo, print, print_r, sprintf, var_dump, var_expor的使用区别
2013/06/20 PHP
php读取flash文件高宽帧数背景颜色的方法
2015/01/06 PHP
php倒计时出现-0情况的解决方法
2016/07/28 PHP
PHP从数组中删除元素的四种方法实例
2017/05/12 PHP
jquery的$getjson调用并获取远程的JSON字符串问题
2012/12/10 Javascript
jquery 字符串切割函数substring的用法说明
2014/02/11 Javascript
PHP使用方法重载实现动态创建属性的get和set方法
2014/11/17 Javascript
使用jQuery仿苹果官网焦点图特效
2014/12/23 Javascript
讲解JavaScript的Backbone.js框架的MVC结构设计理念
2016/02/14 Javascript
jQuery移动端日期(datedropper)和时间(timedropper)选择器附源码下载
2016/04/19 Javascript
easyui window refresh 刷新两次的解决方法(推荐)
2016/05/18 Javascript
星期几的不同脚本写法(推荐)
2016/06/01 Javascript
AngularJS中指令的四种基本形式实例分析
2016/11/22 Javascript
vue-router路由与页面间导航实例解析
2017/11/07 Javascript
通过vue写一个瀑布流插件代码实例
2019/09/07 Javascript
layui table 获取分页 limit的方法
2019/09/20 Javascript
Vue实现背景更换颜色操作
2020/07/17 Javascript
JavaScript实现滚动加载更多
2020/12/27 Javascript
python实现文件名批量替换和内容替换
2014/03/20 Python
python 自动去除空行的实例
2018/07/24 Python
Python3实现的简单工资管理系统示例
2019/03/12 Python
PyQt5实现简易计算器
2020/05/30 Python
python设置环境变量的作用和实例
2019/07/09 Python
Python tkinter布局与按钮间距设置方式
2020/03/04 Python
Python的Tqdm模块实现进度条配置
2021/02/24 Python
使用CSS3实现多列布局与多背景的技巧
2016/02/29 HTML / CSS
主治医师岗位职责
2013/12/10 职场文书
基层工作经历证明
2014/01/13 职场文书
一句话工作感言
2014/03/01 职场文书
药店采购员岗位职责
2014/09/30 职场文书
2016高三毕业赠言寄语
2015/12/04 职场文书
小学一年级数学教学反思
2016/02/16 职场文书
导游词之日本富士山
2020/01/06 职场文书
SpringBoot 集成Redis 过程
2021/06/02 Redis
golang定时器
2022/04/14 Golang
Win11远程连接不上怎么办?Win11远程桌面用不了的解决方法
2022/08/05 数码科技