利用js的数组制作二级联动

简介: 利用js的数组制作二级联动前面的博客我们讲解js的数组及相关属性和方法,今天我们来说一下如何利用js的数组制作二级联动效果。当然,说到二级联动,跳不过的就是多维数组。1.多维数组 // 多维数组:数组作为数组的项 // 二维数组 两层数组 // 二维数组的创建 var arr=[1,2,3,4];//一维数组 // 1.字面量方式声明 var arr2=[[1,2,3],[1,2,3],[4,5,6]]; // 2. 采用构造函数 使用 new 关键字 var arr3=new Array([1,2,3],[4,5

利用js的数组制作二级联动




前面的博客我们讲解js的数组及相关属性和方法,今天我们来说一下如何利用js的数组制作二级联动效果。当然,说到二级联动,跳不过的就是多维数组。


1.多维数组

// 多维数组:数组作为数组的项// 二维数组   两层数组// 二维数组的创建vararr=[1,2,3,4];//一维数组// 1.字面量方式声明vararr2=[[1,2,3],[1,2,3],[4,5,6]];
// 2. 采用构造函数   使用 new 关键字vararr3=newArray([1,2,3],[4,5,6],[7,8,9]);
// 3.先声明 后赋值vararr4=newArray();
arr4[0]=["a","b","c"];
arr4[1]=["o","p","q"];
console.log(arr2);
console.log(arr3);
console.log(arr4);
// 三维数组vararr5=[[[1,2,3],[4,5,6]],["a","b"]];
console.log(arr5);
// 二维数组的访问console.log(arr2[0][0]);
arr2[0][0]="hello";
console.log(arr2);

2.二维数组的遍历


// 一维数组的遍历for(vari=0;i<arr.length;i++){
console.log(arr[i]);
    }
// var arr3=new Array([1,2,3],[4,5,6],[7,8,9]);// 如何遍历二维数组for(varm=0;m<arr3.length;m++){
// console.log(arr3[m]);for(varn=0;n<arr3[m].length;n++){
console.log(arr3[m][n])
        }
    }


3.二级联动


二级联动,简单来说就是要通过一个下拉列表的选项选中,从而在另一个select下拉列表中显示出对应的数据。比如我们出去旅游,在网订酒店,先选择省份,然后会显示出省份下所对应的城市。


html代码:


<formname="form1"action=""method="get"><selectid="a1"onchange="addOption()"></select><selectid="a2"></select></form>

JavaScript代码:


varcity=newArray;        
city['江苏'] = ['南京', '连云港', '苏州', '镇江'];        
city['山东'] = ['青岛', '烟台', '济南'];         
functionallCity() {            
varselect1=document.getElementById("a1");            
for(variincity) {  //这里注意遍历数组的写法select1.add(newOption(i, i), null);
      }   
addOption(); // 初始化选项         }        
functionaddOption() {            
varselect2=document.getElementById("a2");
varselect1=document.getElementById("a1").value; 
select2.length=0; //每次都先清空一下市级菜单  if(select1!='请选择省份') {                
for(variincity[select1 ]) {    
select2.add(newOption(city[select1][i], city[select1][i]), null);                
        }            
      }elseif (sheng=='请选择省份'){              
select2.length=0;           
select2.add(newOption("请选择城市", "请选择城市"), null); 
      }      
    }       
allCity();    



相关文章
|
7月前
|
JavaScript 前端开发 API
JavaScript中通过array.map()实现数据转换、创建派生数组、异步数据流处理、复杂API请求、DOM操作、搜索和过滤等,array.map()的使用详解(附实际应用代码)
array.map()可以用来数据转换、创建派生数组、应用函数、链式调用、异步数据流处理、复杂API请求梳理、提供DOM操作、用来搜索和过滤等,比for好用太多了,主要是写法简单,并且非常直观,并且能提升代码的可读性,也就提升了Long Term代码的可维护性。 只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
|
7月前
|
数据采集 JavaScript 前端开发
JavaScript中通过array.filter()实现数组的数据筛选、数据清洗和链式调用,JS中数组过滤器的使用详解(附实际应用代码)
用array.filter()来实现数据筛选、数据清洗和链式调用,相对于for循环更加清晰,语义化强,能显著提升代码的可读性和可维护性。博客不应该只有代码和解决方案,重点应该在于给出解决方案的同时分享思维模式,只有思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
|
12月前
|
自然语言处理 前端开发 JavaScript
🛠️ JavaScript数组操作指南:20个精通必备技巧🚀
本文详细介绍了 JavaScript 中的 20 个高效数组操作技巧,涵盖了从基本的添加、移除元素,到数组转换和去重等高级操作。强调了不可变性的重要性,提供了清晰的代码示例,帮助开发者编写更整洁和高效的代码。无论是新手还是经验丰富的开发者,这些技巧都将显著提升您的编码能力,使您在项目中更具竞争力。
187 2
|
12月前
|
JavaScript 前端开发 测试技术
JS都有哪些操作数组的方法
JS都有哪些操作数组的方法
331 3
|
12月前
|
JavaScript
js删除数组中已知下标的元素
js删除数组中已知下标的元素
275 4
|
12月前
|
JavaScript 前端开发 Java
【javaScript数组,函数】的基础知识点
【javaScript数组,函数】的基础知识点
102 5
|
12月前
|
缓存 JavaScript 前端开发
JavaScript中数组、对象等循环遍历的常用方法介绍(二)
JavaScript中数组、对象等循环遍历的常用方法介绍(二)
157 1
|
12月前
|
JavaScript 前端开发 索引
探索JavaScript数组:基础
探索JavaScript数组:基础
80 3
|
12月前
|
JavaScript 前端开发 索引
JS 删除数组元素( 5种方法 )
JS 删除数组元素( 5种方法 )
580 1
|
12月前
|
JavaScript 前端开发
如何在JS中声明一个数组
如何在JS中声明一个数组
223 0

热门文章

最新文章