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 相关文章推荐
extjs DataReader、JsonReader、XmlReader的构造方法
Nov 07 Javascript
jquery中获取元素的几种方式小结
Jul 05 Javascript
jQuery :nth-child前有无空格的区别分析
Jul 11 Javascript
最常用的12种设计模式小结
Aug 09 Javascript
Jquery插件分享之气泡形提示控件grumble.js
May 20 Javascript
jQuery学习笔记之jQuery+CSS3的浏览器兼容性
Jan 19 Javascript
实例详解JSON数据格式及json格式数据域字符串相互转换
Jan 07 Javascript
Backbone.js框架中Model与Collection的使用实例
May 07 Javascript
JavaScript中判断数据类型的方法总结
May 24 Javascript
js将table的每个td的内容自动赋值给其title属性的方法
Oct 13 Javascript
seajs下require书写约定实例分析
May 16 Javascript
js实现直播点击飘心效果
Aug 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修改文件上传限制方法汇总
2015/04/07 PHP
php返回当前日期或者指定日期是周几
2015/05/21 PHP
php获取远程图片并下载保存到本地的方法分析
2016/10/08 PHP
javascript offsetX与layerX区别
2010/03/12 Javascript
使用jquery插件实现图片延迟加载技术详细说明
2011/03/12 Javascript
读jQuery之九 一些瑕疵说明
2011/06/21 Javascript
Javascript面向对象扩展库代码分享
2012/03/27 Javascript
FusionCharts图表显示双Y轴双(多)曲线
2012/11/22 Javascript
Jquery仿淘宝京东多条件筛选可自行结合ajax加载示例
2013/08/28 Javascript
Jquery 动态循环输出表格具体方法
2013/11/23 Javascript
容易造成JavaScript内存泄露几个方面
2014/09/04 Javascript
JS的location.href跳出框架打开新页面的方法
2014/09/04 Javascript
jQuery实现查找最近父节点的方法
2016/06/23 Javascript
AngularJS指令用法详解
2016/11/02 Javascript
Bootstrap基本样式学习笔记之标签(5)
2016/12/07 Javascript
微信小程序开发(二)图片上传+服务端接收详解
2017/01/11 Javascript
vue router下的html5 history在iis服务器上的设置方法
2017/10/18 Javascript
vue实现前进刷新后退不刷新效果
2018/01/26 Javascript
python基础入门详解(文件输入/输出 内建类型 字典操作使用方法)
2013/12/08 Python
Python基于scrapy采集数据时使用代理服务器的方法
2015/04/16 Python
python中偏函数partial用法实例分析
2015/07/08 Python
python 开发的三种运行模式详细介绍
2017/01/18 Python
基于Python列表解析(列表推导式)
2018/06/23 Python
python将邻接矩阵输出成图的实现
2019/11/21 Python
Python selenium模拟手动操作实现无人值守刷积分功能
2020/05/13 Python
python中常用的数据结构介绍
2021/01/12 Python
美国在线家装零售商:Build.com
2016/09/02 全球购物
美国最大的在线水培用品商店:GrowersHouse.com
2018/08/14 全球购物
cf搞笑广告词
2014/03/14 职场文书
公证书样本
2014/04/10 职场文书
大学共青团员个人自我评价
2014/04/16 职场文书
KTV门卫岗位职责
2014/10/09 职场文书
安全主题班会教案
2015/08/12 职场文书
想创业成功,需要掌握这些要点
2019/12/06 职场文书
Mysql 数据库中的 redo log 和 binlog 写入策略
2022/04/26 MySQL
Win11无法安装更新补丁KB3045316怎么办 附KB3045316补丁修复教程
2022/08/14 数码科技