纯js三维数组实现三级联动效果


Posted in Javascript onFebruary 07, 2017

本文实例为大家分享了Android九宫格图片展示的具体代码,供大家参考,具体内容如下

<!DOCTYPE html> 
<html> 
<head lang="en"> 
  <meta charset="UTF-8"> 
  <title></title> 
</head> 
<body> 
<p>三级联动效果(纯JS实现)</p> 
<div> 
  专业方向: <select name="sel1" id="sel1"> 
  <option>--请选择专业--</option> 
  <option>JAVA</option><option>PHP</option><option>UI</option> 
  </select> 
</div> 
<div> 
  班级名称: <select name="sel2" id="sel2"> 
  <option>--请选择班级--</option> 
</select> 
</div> 
<div> 
  学生姓名: <select name="sel3" id="sel3"> 
  <option>--请选择学生--</option> 
</select> 
</div> 
<p> 
  您选择的内容是: <span id="sptext"></span> 
</p> 
<script> 
  var myclass = [ 
      [['JAVA班级01'],['JAVA班级02'],['JAVA班级03']], 
      [['PHP班级01'],['PHP班级02'],['PHP班级03']], 
      [['UI班级01'],['UI班级02'],['UI班级03']] 
  ]; 
  var mystudy= [ 
    [ //第一维代表专业 , 第二维代表该专业的班级 ,第三维代表该班级的学生 
      [['JAVA班级01学生01'],['JAVA班级01学生02'],['JAVA班级01学生03'],['JAVA班级01学生04']], 
      [['JAVA班级02学生01'],['JAVA班级02学生02'],['JAVA班级02学生03'],['JAVA班级02学生04']], 
      [['JAVA班级03学生01'],['JAVA班级03学生02'],['JAVA班级03学生03'],['JAVA班级03学生04']] 
    ], 
    [ 
      [['PHP班级01学生01'],['PHP班级01学生02'],['PHP班级01学生03'],['PHP班级01学生04']], 
      [['PHP班级02学生01'],['PHP班级02学生02'],['PHP班级02学生03'],['PHP班级02学生04']], 
      [['PHP班级03学生01'],['PHP班级03学生02'],['PHP班级03学生03'],['PHP班级03学生04']] 
    ], 
    [ 
      [['UI班级01学生01'],['UI班级01学生02'],['UI班级01学生03'],['UI班级01学生04']], 
      [['UI班级02学生01'],['UI班级02学生02'],['UI班级02学生03'],['UI班级02学生04']], 
      [['UI班级03学生01'],['UI班级03学生02'],['UI班级03学生03'],['UI班级03学生04']] 
    ] 
  ]; 
document.getElementById("sel1").onchange = function(){ 
  //获取选择的选项的索引值(从1开始的,没有返回-1) 
  var selectNum = this.selectedIndex; 
  //清空原来的选项 
  document.getElementById("sel2").length=1; 
  document.getElementById("sel3").length=1; 
  //循环添加子节点 
  for(var i=0;i<myclass[selectNum-1].length;i++){ 
    //创建元素节点 
    var node =document.createElement("OPTION"); 
    //创建文本节点 
    var text = document.createTextNode(myclass[selectNum-1][i]); 
     node.appendChild(text); 
    document.getElementById("sel2").appendChild(node); 
  } 
}; 
  document.getElementById("sel2").onchange = function(){ 
    document.getElementById("sel3").length=1; 
    var selectStudentNum = this.selectedIndex; 
    var selectClassNum = document.getElementById("sel1").selectedIndex; 
    for(var i=0;i<mystudy[selectClassNum-1][selectStudentNum-1].length;i++){ 
      var node =document.createElement("OPTION"); 
      var text = document.createTextNode(mystudy[selectClassNum-1][selectStudentNum-1][i]); 
      node.appendChild(text); 
      document.getElementById("sel3").appendChild(node); 
    } 
  } 
</script> 
</body> 
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
在Javascript中为String对象添加trim,ltrim,rtrim方法
Sep 22 Javascript
Javascript 学习笔记 错误处理
Jul 30 Javascript
jquery获取颜色在ie和ff下的区别示例介绍
Mar 28 Javascript
jquery数组过滤筛选方法grep()简介
Jun 06 Javascript
JS深度拷贝Object Array实例分析
Mar 31 Javascript
jQuery添加和删除输入文本框标签代码
May 20 Javascript
js控制div层的叠加简单方法
Oct 15 Javascript
js微信分享实现代码
Oct 11 Javascript
基于vue实现滚动条滚动到指定位置对应位置数字进行tween特效
Apr 18 Javascript
Vue双向数据绑定(MVVM)的原理
Oct 03 Javascript
Ant Design Pro 之 ProTable使用操作
Oct 31 Javascript
详解为什么Vue中的v-if和v-for不建议一起用
Jan 13 Vue.js
在点击div中的p时,如何阻止事件冒泡
Feb 07 #Javascript
bootstrap vue.js实现tab效果
Feb 07 #Javascript
Node连接mysql数据库方法介绍
Feb 07 #Javascript
jQuery监听浏览器窗口大小的变化实例
Feb 07 #Javascript
Bootstrap table表格简单操作
Feb 07 #Javascript
Jquery根据浏览器窗口改变调整大小的方法
Feb 07 #Javascript
对比分析Django的Q查询及AngularJS的Datatables分页插件
Feb 07 #Javascript
You might like
用文本文件实现的动态实时发布新闻的程序
2006/10/09 PHP
坏狼的PHP学习教程之第1天
2008/06/15 PHP
php的list()的一步操作给一组变量进行赋值的使用
2011/05/18 PHP
PHP mail()函数使用及配置方法
2014/01/14 PHP
php通过修改header强制图片下载的方法
2015/03/24 PHP
php中PDO方式实现数据库的增删改查
2015/05/17 PHP
PHP与Web页面交互操作实例分析
2020/06/02 PHP
简单三步,搞掂内存泄漏
2007/03/10 Javascript
js 返回时间戳所对应的具体时间
2010/07/20 Javascript
JS维吉尼亚密码算法实现代码
2010/11/09 Javascript
Extjs Gird 支持中文拼音排序实现代码
2013/04/15 Javascript
Javascript中的for in循环和hasOwnProperty结合使用
2013/06/05 Javascript
Bootstrap每天必学之导航
2015/11/26 Javascript
AngularJS  ng-repeat遍历输出的用法
2017/06/19 Javascript
angularjs实现简单的购物车功能
2017/09/21 Javascript
用POSTMAN发送JSON格式的POST请求示例
2018/09/04 Javascript
区别JavaScript函数声明与变量声明
2018/09/12 Javascript
在Angular中实现一个级联效果的下拉框的示例代码
2020/05/20 Javascript
Element-ui 自带的两种远程搜索(模糊查询)用法讲解
2021/01/29 Javascript
[52:08]DOTA2上海特级锦标赛主赛事日 - 3 败者组第三轮#2Fnatic VS OG第一局
2016/03/05 DOTA
Windows中安装使用Virtualenv来创建独立Python环境
2016/05/31 Python
Python实现的多线程http压力测试代码
2017/02/08 Python
Python 文件操作的详解及实例
2017/09/18 Python
python3学习笔记之多进程分布式小例子
2018/02/13 Python
Python中elasticsearch插入和更新数据的实现方法
2018/04/01 Python
Python 输入一个数字判断成绩分数等级的方法
2018/11/15 Python
基于Python解密仿射密码
2019/10/21 Python
Pytorch.nn.conv2d 过程验证方式(单,多通道卷积过程)
2020/01/03 Python
Python基于yield遍历多个可迭代对象
2020/03/12 Python
Django后端分离 使用element-ui文件上传方式
2020/07/12 Python
python 获取字典特定值对应的键的实现
2020/09/29 Python
html5拖曳操作 HTML5实现网页元素的拖放操作
2013/01/02 HTML / CSS
什么情况下你必须要把一个类定义为abstract的
2013/01/06 面试题
旷工检讨书大全
2015/08/15 职场文书
三严三实学习心得体会(精选N篇)
2016/01/05 职场文书
2019中小学生安全过暑期倡议书
2019/06/24 职场文书