zoukankan      html  css  js  c++  java
  • JS学习之实现简单的二级联动

    一:多级联动在开发中使用的十分频繁,总结一下其主要步骤:

    1、找到绑定onchange()的标签

    1.1、创建一个合适的数组(开发过程中用数据库)存储需要的数据

    2、以适当的方式传参

    3、JS层要找到相应的标签,同时用层层包裹的形式给第二、三等等等标签赋值。

    4、最后要进行清空处理

    二:demo实现

    html代码:

    1             姓名--兴趣爱好     
    2             <!-- //下面为第一级列表绑定onchange事件,同时传参此时用this.value方法 -->
    3             <select onchange="Cname(this.value)">
    4                 <option>--请下拉选择--</option>
    5                 <option value="0">张三</option>
    6                 <option value="1">李四</option>s
    7             </select>
    8             <select id="hobby">
    9             </select>

    JS代码:

     1             //定义一个二维数组用来存储第二级的列表信息
     2             var stus = new Array();
     3             stus[0] = new Array("唱", "跳", "rap");
     4             stus[1] = new Array("足球", "篮球", "羽毛球");
     5             //实现onchange事件
     6             function Cname(val) {
     7                 //找到第二级的列表id
     8                 var hobby = document.getElementById("hobby");
     9                 //每次调用onchange事件的时候要清空第二级的列表内容,否则会出现内容错乱
    10                 hobby.options.length = 0;
    11 
    12                 for (var i = 0; i < stus.length; i++) {
    13                     //将第一级的下标与数组第一级的下标进行对比
    14                     if (val == i) {
    15                         //找到对应下标后进行赋值操作
    16                         for (var j = 0; j < stus[i].length; j++) {
    17                             //创建一个文本节点,用来存储列表第二级的内容,实际开发应该是用数据库存储
    18                             var textNode = document.createTextNode(stus[i][j]);
    19                             //创建一个标签节点
    20                             var opEle = document.createElement("option");
    21                             //将标签节点包裹文本节点
    22                             opEle.appendChild(textNode);
    23                             //将第二级父节点包裹标签子节点
    24                             hobby.appendChild(opEle);
    25                         }
    26                     }
    27                 }
    28             }
  • 相关阅读:
    Javascript 获取链接(url)参数的方法
    开源项目托管 SourceForge, Google Code, CodePlex
    17种正则表达式
    varchar(MAX)SQL2005的增强特性
    sql语句格式化工具
    中国学佛66句禅语
    Office 2003正版验证破解方法
    Installing Windows CE 6.0 tools on a Windows7 64bit PC (Updated again)
    Using C# Connector SQLite
    Invoking web services with Java clients
  • 原文地址:https://www.cnblogs.com/zhang188660586/p/11175555.html
Copyright © 2011-2022 走看看