JavaScript实现简单省市联动

 更新时间:2021年10月11日 11:29:11   作者:莎蛋蛋的盖世英雄啊  
这篇文章主要为大家详细介绍了JavaScript实现简单省市联动,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了JavaScript实现简单省市联动的具体代码,供大家参考,具体内容如下

步骤

* 创建一个页面,有两个下拉选择框
    * 在第一个下拉框里面有一个事件 :改变事件 onchange事件
        - 方法add1(this.value);表示当前改变的option里面的value值
    * 创建一个二维数组,存储数据
        * 每个数组中第一个元素是国家名称,后面的元素是国家里面的城市
*    

1、遍历二维数组

2、得到也是一个数组(国家对应关系)

3、拿到数组中的第一个值和传递过来的值做比较

4、如果相同,获取到第一个值后面的元素

5、得到city的select

6、添加过去(使用)appendChild方法
            - 创建option(三步)

/*
        由于每次都要向city里面添加option
        第二次添加,会追加。

        * 每次添加之前,判断一下city里面是否有option,如果有,删除
*/

代码如下:

<html >
 <head>
   
  <title>省市联动</title>
  <style type = "text/css">
  </style>
 </head>
 <body>
   <select id="countyid" onchange="add1(this.value)">
  <option value="0">--请选择--</option>
  <option value="中国">中国</option>
  <option value="美国">美国</option>
  <option value="英国">英国</option>
  <option value="日本">日本</option>
 
   </select>
 
    <select id="cityid" >
 
   </select>
 </body>
 <script type="text/javascript">
 var arr = new Array(4);
 arr[0]=["中国","北京","上海","深圳","杭州"];
 arr[1]=["美国","华盛顿","纽约","底特律","芝加哥"];
 arr[2]=["英国","伦敦","伯明翰","利兹","利物浦"];
 arr[3]=["日本","东京","大阪","北海道","长崎"];
 /*
  步骤:
  1.遍历二维数组
  2.得到一个数组-国家对应关系
  3.用数组中第一个值与传递过来的值作比较
  4.如果相同,获取到第一个值后面的元素
  5.得到city的select
  6.添加过去-appendChild方法
   -创建option(三步)
   
  由于每次都要向city里面添加option
  第二次添加,会追加。
  * 每次添加之前,判断一下city里面是否有option,如果有,删除
 */
 
 function add1(val){
  //得到city里面的select
   var city1 = document.getElementById("cityid");
   var ops = city1.getElementsByTagName("option");
   for(var m=0;m<ops.length;m++){
    var op = ops[m];
    city1.removeChild(op);
    m--;
   }
  for(var i=0;i<arr.length;i++){
   arr1=arr[i];
   var firstValue = arr1[0];
   if (firstValue == val)
   {
    
    //创建option
    for(var j=1;j<arr1.length;j++){
     var value1 = arr1[j];
     var option1=document.createElement("option");
     var text1 = document.createTextNode(value1);
     option1.appendChild(text1);
     city1.appendChild(option1);
    }
   }
   
  }
 }
 
   </script>
 
</html>

效果图演示:

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

相关文章

  • js实现星星海特效的示例

    js实现星星海特效的示例

    这篇文章主要介绍了js实现星星海特效的示例,帮助大家制作网页特效,感兴趣的朋友可以了解下
    2020-09-09
  • Sourcemap源代码映射详细介绍

    Sourcemap源代码映射详细介绍

    这篇文章主要为大家介绍了Sourcemap源代码映射介绍及示例详解解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪<BR>
    2023-04-04
  • JavaScript实现的图像模糊算法代码分享

    JavaScript实现的图像模糊算法代码分享

    这篇文章主要介绍了JavaScript实现的图像模糊算法代码分享,需要的朋友可以参考下
    2014-04-04
  • jQuery获取随机颜色的实例代码

    jQuery获取随机颜色的实例代码

    这篇文章主要介绍了jQuery获取随机颜色的实例代码,非常不错,具有一定的参考借鉴价值,感兴趣的朋友跟随脚本之家小编来学习吧
    2018-05-05
  • 简单谈谈ES6的六个小特性

    简单谈谈ES6的六个小特性

    ES6(ECMAScript2015)的出现,无疑给前端开发人员带来了新的惊喜,它包含了一些很棒的新特性,可以更加方便的实现很多复杂的操作,提高开发人员的效率。JS社区的每个人都喜欢新的API、语法以及一些简单、明了更高效的完成重要任务的新特性。下面来一起看看吧。
    2016-11-11
  • 微信小程序实现tab组件切换动画

    微信小程序实现tab组件切换动画

    tab相对而言用的还是比较多的,但是用起来并没有难,下面这篇文章主要给大家介绍了关于微信小程序全局配置之tab的相关资料,文中通过图文以及示例代码介绍的非常详细,需要的朋友可以参考下
    2022-10-10
  • JS日期对象简单操作(获取当前年份、星期、时间)

    JS日期对象简单操作(获取当前年份、星期、时间)

    这篇文章主要介绍了JS日期对象简单操作,获取当前年份、星期、时间等代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-10-10
  • Bootstrap Navbar Component实现响应式导航

    Bootstrap Navbar Component实现响应式导航

    这篇文章主要介绍了Bootstrap Navbar Component实现响应式导航的相关资料,讲解了Bootstrap Navbar应用及源码解析,需要的朋友可以参考下
    2016-10-10
  • 教你30秒发布一个TypeScript包到NPM的方法步骤

    教你30秒发布一个TypeScript包到NPM的方法步骤

    这篇文章主要介绍了教你30秒发布一个TypeScript包到NPM的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • js实现iframe跨页面调用函数的方法

    js实现iframe跨页面调用函数的方法

    这篇文章主要介绍了js实现iframe跨页面调用函数的方法,实例展示了iframe中父页面调用子页面和子页面调用父页面的实现技巧,非常具有实用价值,需要的朋友可以参考下
    2014-12-12

最新评论