js(二) 实现省市联动(json)

通过HTML页面的city的select选取的value值,从json里面获取相对应的键值对,最后将值拼接到下拉框中

 1 function x1(th) {
 2     //通过传入的th的value获取相对应的citys中的json值
 3    var cs=citys[th.value];
 4    var str="";
 5     //循环获取每一个值并拼接成<option></option>
 6    for (var i=0;i<cs.length;i++){
 7      str+="<option>"+cs[i]+"</option>";
 8    }
 9     //获取HTML页面的city
10     var city=document.getElementById("city");
11     //将值写入界面
12      city.innerHTML=str;
13   }

 

源码:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>
<select id="province" οnchange="x1(this)">
  <option>请选择</option>
  <option>福建</option>
  <option>江西</option>
</select>
<select id="city" οnchange="x2(this)">
  <option>请选择</option>
</select>
<select id="area">
  <option>请选择</option>
</select>

  <script>
    var citys={
      "福建":["请选择","厦门","泉州","漳州"],
      "江西":["请选择","南昌","九江","新余"]
    };

    var areas={
      "厦门":["请选择","思明区","湖里区","同安"],
      "泉州":["请选择","泉州","泉州","泉州","泉州"],
      "南昌":["请选择","南昌","南昌","南昌","南昌"],
      "九江":["请选择","九江","九江","九江","九江"]
    }


  function x1(th) {
   var cs=citys[th.value];
   var str="";
   for (var i=0;i<cs.length;i++){
     str+="<option>"+cs[i]+"</option>";
   }
    var city=document.getElementById("city");
     city.innerHTML=str;
  }
  function x2(th) {
  var aa=areas[th.value];
  var str1="";
    for(var i=0;i<aa.length;i++){
      str1+="<option>"+aa[i]+"</option>";
    }
    var area=document.getElementById("area");
    area.innerHTML=str1;
  }

  </script>
</body>
</html>

 

转载于:https://www.cnblogs.com/LiuOOP/p/11090762.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值