js实现三级联动效果(简单易懂)


Posted in Javascript onMarch 27, 2017

话不多说,请看代码:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8" />
  <title></title>
</head>
<body>
<select id="one">
  <option>请输入省份</option>
</select>
<select id="two">
  <option>请输入市</option>
</select>
<select id="three">
  <option>请输入区</option>
</select>
<script type="text/javascript">
  var oone=document.getElementById("one");
  var otwo=document.getElementById("two");
  var three=document.getElementById("three");
  var str='';
  otwo.disabled=true;
  three.disabled=true;
  var arr1=[{"id":"1","value":"北京"},{"id":"2","value":"上海"},{"id":"3","value":"重庆"},{"id":"4","value":"天津"},{"id":"5","value":"山东"}];
  for(var i=0;i<arr1.length;i++){
    str+="<option value="+arr1[i].id+">"+arr1[i].value+"</option>"
  }
  oone.innerHTML=str;
  var arr2 = {
    '1':['101@北京'],
    '2':['201@上海'],
    '3':['301@重庆'],
    '4':['401@天津'],
    '5':['501@济南','502@青岛']  };
  oone.onchange=function(){
    var val=this.value;
    var arrA = arr2[val];
    var str1='<option>请输入市</option>';
    for(var j=0;j<arrA.length;j++){
      var aaa=arrA[j].split('@');
      str1+="<option value="+aaa[0]+">"+aaa[1]+"</option>"
    }
    otwo.innerHTML=str1;
    otwo.disabled=false;
    three.innerHTML='<option>请输入区</option>';
    three.disabled='disabled';
  }
  var arr3 = {
    '101':['朝阳区','昌平区'],
    '201':['宝山区','浦东区'],
    '301':['不知道'],
    '401':['真的不知道'],
    '501':['市中区','历下区','槐荫区'],
    '502':['市南区','市北区','崂山区']  };
  otwo.onchange = function(){
    var val=this.value;
    console.log( this.value);
    var str2='<option>请输入区</option>';
    console.log(val)
    for(var l=0;l<arr3[val].length;l++){
      str2+="<option >"+arr3[val][l]+"</option>"
    }
    three.innerHTML=str2;
    three.disabled=false;
  }
</script>
</body>
</html>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
jQuery Dialog 弹出层对话框插件
Aug 09 Javascript
多选列表框动态添加,移动,删除,全选等操作的简单实例
Jan 13 Javascript
jQuery中remove()方法用法实例
Dec 25 Javascript
JavaScript创建一个object对象并操作对象属性的用法
Mar 23 Javascript
JavaScript数组合并的多种方法
May 22 Javascript
jQuery中 $ 符号的冲突问题及解决方案
Nov 04 Javascript
Vue form 表单提交+ajax异步请求+分页效果
Apr 22 Javascript
Angular客户端请求Rest服务跨域问题的解决方法
Sep 19 Javascript
JavaScript实现的前端AES加密解密功能【基于CryptoJS】
Aug 28 Javascript
vue+element树组件 实现树懒加载的过程详解
Oct 21 Javascript
Vue实现数据请求拦截
Oct 23 Javascript
JS实现的定时器展示简单秒表、页面弹框及跳转操作完整示例
Jan 26 Javascript
JS数组去重(4种方法)
Mar 27 #Javascript
JS实现隔行换色的表格排序
Mar 27 #Javascript
JavaScript实现获取远程的html到当前页面中
Mar 26 #Javascript
axios学习教程全攻略
Mar 26 #Javascript
js oncontextmenu事件使用详解
Mar 25 #Javascript
js 函数式编程学习笔记
Mar 25 #Javascript
CodeMirror js代码加亮使用总结
Mar 25 #Javascript
You might like
生成php程序的php代码
2008/04/07 PHP
php中模拟POST传递数据的两种方法分享
2011/09/16 PHP
PHP将整个网站生成HTML纯静态网页的方法总结
2012/02/05 PHP
php 无限级分类,超级简单的无限级分类,支持输出树状图
2014/06/29 PHP
WordPress中邮件的一些修改和自定义技巧
2015/12/15 PHP
Yii中表单用法实例详解
2016/01/05 PHP
php+js实现的拖动滑块验证码验证表单操作示例【附源码下载】
2020/05/27 PHP
JSON辅助格式化处理方法
2013/03/26 Javascript
Node.js文件操作详解
2014/08/16 Javascript
简介AngularJS中使用factory和service的方法
2015/06/17 Javascript
jQuery无缝轮播图代码
2016/12/22 Javascript
fullCalendar中文API官方文档
2017/02/07 Javascript
jQuery模拟窗口抖动效果
2017/03/15 Javascript
整理关于Bootstrap警示框的慕课笔记
2017/03/29 Javascript
jQuery判断网页是否已经滚动到浏览器底部的实现方法
2017/10/27 jQuery
基于form-data请求格式详解
2019/10/29 Javascript
详解Nuxt.js 实战集锦
2019/11/19 Javascript
[02:55]含熏伴清风,风行者至宝、屠夫身心及典藏宝瓶二展示
2020/09/08 DOTA
python实现给微信公众号发送消息的方法
2017/06/30 Python
Python多线程threading和multiprocessing模块实例解析
2018/01/29 Python
Tensorflow模型实现预测或识别单张图片
2019/07/19 Python
Python-openCV读RGB通道图实例
2020/01/17 Python
python中字典增加和删除使用方法
2020/09/30 Python
浅析两列自适应布局的3种思路
2016/05/03 HTML / CSS
HTML5 背景的显示区域实现
2020/07/09 HTML / CSS
发现世界上最好的珠宝设计师:JewelStreet
2017/12/17 全球购物
英国第一家领先的在线处方眼镜零售商:Glasses Direct
2018/02/23 全球购物
安全生产活动月方案
2014/03/09 职场文书
党员公开承诺书和承诺事项
2014/03/25 职场文书
爱我中华教学反思
2014/04/28 职场文书
公司人事任命通知
2015/04/20 职场文书
致我们终将逝去的青春观后感
2015/06/10 职场文书
Mysql Online DDL的使用详解
2021/05/20 MySQL
JavaScript原型链详解
2021/11/07 Javascript
Docker部署Mysql8的实现步骤
2022/07/07 Servers
输入框跟随文字内容适配宽实现示例
2022/08/14 Javascript