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>

效果图演示:

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

(0)

相关推荐

  • JavaScript二维数组实现的省市联动菜单

    复制代码 代码如下: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> <script type="text/javascript"> //初始化一个二维数组存储城市列表项 var cities=[ ["安庆","合肥",&

  • js省市联动效果完整实例代码

    本文实例讲述了js省市联动效果.分享给大家供大家参考,具体如下: 运行效果截图如下: 具体代码如下: <html> <head> <title></title> <script language="javascript" type="text/javascript"> //定义 城市 数据数组 cityArray = new Array(); cityArray[0] = new Array("北

  • js实现省市联动效果的简单实例

    实例如下: 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head>    <title>省市二

  • JavaScript省市联动实现代码

    复制代码 代码如下: <html><head>    <title>JS省市二级联动菜单,整理收集.</title></head><body bgcolor="#FFFFFF" alink="#333333" vlink="#333333" link="#333333" topmargin="0"    leftmargin="0&

  • 基于JavaScript实现省市联动效果

    本文实例为大家分享了JavaScript实现省市联动效果的具体代码,供大家参考,具体内容如下 代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>省市级联动效果</title> </head> <body onload="initProvince()"> 省

  • 解决JavaScript实现省市联动过程中的bug

    先把实现省市联动遇到的问题描述一下 1.1.原来的思路 1.1.1.初始化加载省份 $.ajax({ 'type' : 'POST', 'dataType' : 'json', 'url' : '${rc.contextPath}/crm/merchantMgr/editMerchantBankAccount.htm?method=getBankProvinces', 'success' : function(msg) { bankProvinces = msg; for(var i=0;i<b

  • JSON+HTML实现国家省市联动选择效果

    复制代码 代码如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>json</title> <script type="text/javascript"> <!-- v

  • 基于JS实现省市联动效果代码分享

    在日常项目开发阶段经常见到下拉框二级联动效果,尤其是涉及地区.品种等有多级选项时.比如说:常见的省市联动下拉框,在选择省份时,城市列表也会更随改变. 思路: 1,所谓联动效果,是指出发父级的数据变化时,会影响到关联性子级数据元素的变化. 下面是造的省市的数据: var linkDatas = { provinces:[ { "code":"0", "name":"请选择" }, { "code":"

  • javascript 09年最新版的省市联动

    请选择 请选择 请选择 var areaData = "110000|北京市,110100|市辖区,110101|东城区,110102|西城区,110103|崇文区,110104|宣武区,110105|朝阳区,110106|丰台区,110107|石景山区,110108|海淀区,110109|门头沟区,110111|房山区,110112|通州区,110113|顺义区,110114|昌平区,110115|大兴区,110116|怀柔区,110117|平谷区,110200|县,110228|密云县,11

  • JavaScript实现省市联动效果

    本文实例为大家分享了JavaScript实现省市联动的具体代码,供大家参考,具体内容如下 实现效果: 1.当点击文字时选中对应的下拉菜单 2.选择省,后面跟本省对应的市 实现过程: 1.获得省的Dom对象 2.用循环为省的下拉菜单设置option子节点,并将数组每个pName的值赋给创建的子节点 3.每次循环同时为option子节点设置value属性 4.同理在点击省的同时,为市创建option子节点,并将cName的值赋给子节点,设置属性 实现细节: 1. 点击省时采用onchange事件(元

随机推荐