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在光标位置插入内容的实现代码
Jun 18 Javascript
jquery ajax属性async(同步异步)示例
Nov 05 Javascript
javascript获取dom的下一个节点方法
Sep 05 Javascript
JS实现页面载入时随机显示图片效果
Sep 07 Javascript
javascript 闭包详解及简单实例应用
Dec 31 Javascript
几种tab切换详解
Feb 03 Javascript
详解原生js实现offset方法
Jun 15 Javascript
JS 音频可视化插件Wavesurfer.js的使用教程
Oct 31 Javascript
详解express使用vue-router的history踩坑
Jun 05 Javascript
详解JWT token心得与使用实例
Aug 02 Javascript
Vue的编码技巧与规范使用详解
Aug 28 Javascript
vue如何搭建多页面多系统应用
Jun 17 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
德生PL330的评价与改造
2021/03/02 无线电
yii2 页面底部加载css和js的技巧
2016/04/21 PHP
JS冒泡事件的快速解决方法
2013/12/16 Javascript
javascript 密码框防止用户粘贴和复制的实现代码
2014/02/17 Javascript
纯js实现div内图片自适应大小(已测试,兼容火狐)
2014/06/16 Javascript
js中使用使用原型(prototype)定义方法的好处详解
2016/07/04 Javascript
表单中单选框添加选项和移除选项
2016/07/04 Javascript
酷! 不同风格页面布局幻灯片特效js实现
2021/02/19 Javascript
js/jq仿window文件夹移动/剪切/复制等操作代码
2017/03/08 Javascript
jQuery实现的简单获取索引功能示例
2018/06/04 jQuery
Vue使用Proxy监听所有接口状态的方法实现
2019/06/07 Javascript
JavaScript闭包相关知识解析
2019/10/19 Javascript
原生JavaScript实现的无缝滚动功能详解
2020/01/17 Javascript
JavaScript find()方法及返回数据实例
2020/04/30 Javascript
python获取豆瓣电影简介代码分享
2014/01/16 Python
python实现在字符串中查找子字符串的方法
2015/07/11 Python
Python使用multiprocessing实现一个最简单的分布式作业调度系统
2016/03/14 Python
Python使用matplotlib绘制多个图形单独显示的方法示例
2018/03/14 Python
pandas计算最大连续间隔的方法
2019/07/04 Python
python快速安装OpenCV的步骤记录
2021/02/22 Python
Vita Fede官网:在意大利手工制作,在纽约市设计
2019/10/25 全球购物
Java模拟试题
2014/11/10 面试题
优秀求职自荐信怎样写
2013/12/18 职场文书
医药专业应届毕业生求职信范文
2014/01/01 职场文书
市场安全管理制度
2014/01/26 职场文书
表彰先进的通报
2014/01/31 职场文书
音乐教育感言
2014/03/05 职场文书
农行心得体会
2014/09/02 职场文书
毕业生实习证明
2014/09/19 职场文书
一份教室追逐打闹的检讨书
2014/09/27 职场文书
专升本学生毕业自我鉴定
2014/10/04 职场文书
2015年党员自我剖析材料
2014/12/17 职场文书
员工年终考核评语
2014/12/31 职场文书
《秋思》教学反思
2016/02/23 职场文书
如何书写授权委托书?
2019/06/25 职场文书
纪念建国70周年演讲稿
2019/07/19 职场文书