原生js二级联动
今天说的这个是原生js的二级联动,在空白页面里动态添加并作出相对应的效果。 1 //创建两个下拉列表 select标签 是下拉列表
var sel = document.createElement("select");
var sel1 = document.createElement("select");
//添加到body
document.body.appendChild(sel);
document.body.appendChild(sel1);
// 创建一个数组
var firstSelectArr = ["未选择","医院","学校","公司","星座"];
var detailFirstArr = ["未选择","院长","主任","大夫","护士"];
var detailSecondArr = ["未选择","校长","老师","学生","主任"];
var arr2 = ["未选择","CEO","职员","主任","下属"];
var arr3 = ["未选择","白羊座","射手座","处女座","天秤座"];
function addChild(arr,parentN){
//封装函数
for(var i=0;i<arr.length;i++){
//创建 option节点
var opt = document.createElement("option");
//设置显示文字
opt.innerText = arr[i];
//把节点添加到sel中
parentN.appendChild(opt); }
}
//调用函数 给第一个select添加option
addChild(firstSelectArr,sel) //循环创建多个下拉选项 //给第一个下拉列表添加onchange事件
//onchange事件:当元素的值发生改变时,触发此事件。
sel.onchange = function (){
// selectdIndex.下拉列表的索引
console.log(sel.selectedIndex);
switch (sel.selectedIndex){
case 0:
alert("未选择");
break;
case 1:
delectOldOpt();
addChild(detailFirstArr,sel1);
break;
case 2:
delectOldOpt();
addChild(detailSecondArr,sel1);
break;
case 3:
delectOldOpt();
addChild(arr2,sel1);
break;
case 4:
delectOldOpt();
addChild(arr3,sel1);
break;
} }
//删除select原来的option
function delectOldOpt(){
//到这删除下拉列表中的选项
for(var i=sel1.childNodes.length-1;i>=0;i--){
//删除选项
sel1.removeChild(sel1.childNodes[i]);
} }
这样就完成了一个最简单的二级联动,希望可以帮到你们!!!!
原生js二级联动的更多相关文章
- 原生js的联动全选
开发应用中有很多工具可以使用,下面介绍一个原生js写的联动全选思路!!! <!DOCTYPE html> <html lang="en"> <head ...
- 原生js三级联动
<!DOCTYPE html> <html lang="en"> <head> <title> 三级联动 </title> ...
- Ext.js二级联动
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <link href ...
- js二级联动
<body> <section> <a>省份</a> <select id="province"> <option ...
- js 二级联动
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- 省市二级联动(原生JS)
代码如下: <html> <head> <meta charset="UTF-8"> <title>省市二级联动</title ...
- 原生js实现二级联动下拉列表菜单
二级联动下拉列表菜单的难点在于对后台返回的数据进行解析,不多逼逼,直接上代码 上图是后台返回的数据 实现代码如下: var deviceNotExist = true;//防止数据重复 if(data ...
- xml+js+html的二级联动
首先需要准备的文档是: cities.xml //主要是标注中国各省及其各省下的各个城市 内容如下: <?xml version="1.0" encoding="U ...
- 省市二级联动--使用app-jquery-cityselect.js插件
只有省市二级联动,三级联动还没处理好,会尽快完善. 嵌入id: <div class="form-group"> <label>地址</label&g ...
随机推荐
- [原创]Jquery实现表格内容点击隐藏显示内容
1.首先看效果,点击红色字体,可是查看全部文字内容 2.JS实现 思路:将Ajax获得的数据,一份截取,一份不变,放到td里面,分别用span装着. 然后通过display属性,进行切换
- 学习笔记:javascript 窗口对象(window)
1.窗口对象属性 属性 描述 closed 返回窗口是否已被关闭. defaultStatus 设置或返回窗口状态栏中的默认文本. document 对 Document 对象的只读引用.请参阅 Do ...
- 省市区三级联动(jquery+ajax)(封装和不封装两种方式)-----2017-05-15
首先,要实现如下图效果, 1.要理清思路: 先做出三个下拉菜单----根据第一个下拉菜单的value值获取第二个下拉列表的内容,第三个同理. 2.用到的数据库表:Chinastates表 规律:根据国 ...
- Spring AOP的切入点表达式
在spring Aop中要使用AspectJ的切点表达式语言来定义切点.Spring仅仅支持AspectJ切点指示器的一个子集.下表列出了Spring AOP所支持的AspectJ切点指示器. 在Sp ...
- 电商的噩梦?实体商家的福音——VR全景智慧城市
我们不知道未来网络购物的样子,但对当前电商平台的问题是清楚的.从消费者角度来看,网购的顾虑主要在于商品的质量难以保证.物流效率不够高,以及网络购物的"眼见不为实". 正因为可以很好 ...
- 由typedef和函数指针引起的危机
由typedef和函数指针引起的危机 昨天阅读了大神强哥的代码,发现里面用到了函数指针,也用到的typedef.本来我自以为对这两个概念有一定的认识,但是突然发现这两个东西居然用到了一起!!!!(在一 ...
- bitnami gitlab 安装
安装gitlab需要安装的依赖软件比较多,基于偷懒的原则,从网上找到了bitnami-gitlab-8.7.1-0-linux-x64-installer.run ,集成了所有的相关软件,一键安装,省 ...
- 集群/分布式环境下5种session处理策略
转载自:http://blog.csdn.net/u010028869/article/details/50773174?ref=myread 前言 在搭建完集群环境后,不得不考虑的一个问题就是用户访 ...
- jsp的自定义标签 控制jsp内容显示
引入方式示例 <%@ taglib prefix="fns" uri="/WEB-INF/tlds/fns.tld" %> tld文件 <?x ...
- centos 修改主机映射
[root@m1 ~]# vi /etc/hosts