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 相关文章推荐
可简单避免的三个JS发布错误的详细介绍
Aug 02 Javascript
JS创建自定义表格具体实现
Feb 11 Javascript
javascript模拟map输出与去除重复项的方法
Feb 09 Javascript
KnockoutJS 3.X API 第四章之表单submit、enable、disable绑定
Oct 10 Javascript
Bootstrap框架实现广告轮播效果
Nov 28 Javascript
浅析BootStrap中Modal(模态框)使用心得
Dec 24 Javascript
前端构建工具之gulp的配置与搭建详解
Jun 12 Javascript
vue实现手机号码抽奖上下滚动动画示例
Oct 18 Javascript
JS非行间样式获取函数的实例代码
Jun 05 Javascript
详解easyui基于 layui.laydate日期扩展组件
Jul 18 Javascript
解决Vue在封装了Axios后手动刷新页面拦截器无效的问题
Nov 08 Javascript
ElementUI 修改默认样式的几种办法(小结)
Jul 29 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
将数字格式的计算结果转为汉字格式
2006/10/09 PHP
PHP创建XML接口示例
2019/07/04 PHP
正则表达式判断是否存在中文和全角字符和判断包含中文字符串长度
2008/09/27 Javascript
Jquery插件easyUi表单验证提交(示例代码)
2013/12/30 Javascript
js限制checkbox选中个数以限制六个为例
2014/07/15 Javascript
jquery实现textarea输入框限制字数的方法
2015/01/15 Javascript
jQuery中extend函数详解
2015/02/13 Javascript
JQuery球队选择实例
2015/05/18 Javascript
js生成随机数(指定范围)的实例代码
2016/07/10 Javascript
jQuery版AJAX简易封装代码
2016/09/14 Javascript
jQuery中 $ 符号的冲突问题及解决方案
2016/11/04 Javascript
JS实用的带停顿的逐行文本循环滚动效果实例
2016/11/23 Javascript
vue源码学习之Object.defineProperty对象属性监听
2018/05/30 Javascript
如何用webpack4带你实现一个vue的打包的项目
2018/06/20 Javascript
layui从数据库中获取复选框的值并默认选中方法
2018/08/15 Javascript
在vue中多次调用同一个定义全局变量的实例
2018/09/25 Javascript
微信小程序实现的3d轮播图效果示例【基于swiper组件】
2018/12/11 Javascript
Vue自定义属性实例分析
2019/02/23 Javascript
Vue监听滚动实现锚点定位(双向)示例
2019/11/13 Javascript
typescript配置alias的详细步骤
2020/08/12 Javascript
浅谈Django的缓存机制
2018/08/23 Python
PyQtGraph在pyqt中的应用及安装过程
2019/08/04 Python
Python字符串的修改方法实例
2019/12/19 Python
Pycharm中安装Pygal并使用Pygal模拟掷骰子(推荐)
2020/04/08 Python
Python爬虫获取页面所有URL链接过程详解
2020/06/04 Python
详细分析Python垃圾回收机制
2020/07/01 Python
使用CSS3创建动态菜单效果
2015/07/10 HTML / CSS
请说出几个常用的异常类
2013/01/08 面试题
经典C++面试题一
2016/11/06 面试题
工程专业求职自荐书范文
2014/02/08 职场文书
平面设计专业求职信
2014/08/09 职场文书
企业爱岗敬业演讲稿
2014/09/04 职场文书
个人作风建设剖析材料
2014/10/11 职场文书
村党的群众路线教育实践活动工作总结
2014/10/25 职场文书
2015年八一建军节活动总结
2015/03/20 职场文书
儿子满月酒致辞
2015/07/29 职场文书