JavaScript省份城市的三级联动

   JavaScript省份城市的三级联动

     使用JavaScript中变量(数组或对象)定义省份及对应的城市,应用Select标签对象,实现二级级联的 下拉菜单选中效果。也就是说,在省份下拉菜单中,选中一个省份时,在城市下拉菜单中出现对应城市选择内容。效果如下:

 

代码如下:

<!DOCTYPE html>
<html>
    <head>
        <meat charset="utf-8"></meat>
        <title>JavaScript省份城市的三级联动</title>
        
    </head>
    <body>
      
<h2>选择所在的省份及城市<br/><br/>
省份:<select id="province">
      <option value="-1">请选择</option>
      
    </select>
城市 <select id="city"></select>
</h2>

    <script>
      // 省份数组
      let provinceArr = ["北京","上海", "山东省", "甘肃省", "江苏", "河北"];
      //城市数组
      let cityArr = [
        ["北京市"],
        ["上海市"],
        ["济南市", "青岛市", "烟台市"],
        ["兰州", "白银", "天水","武威","金昌"],
        ["苏州市", "南京市", "扬州市"],
        ["石家庄", "秦皇岛", "张家口"],
      ];

      //给下拉菜单添加选项
      function createOption(select, arr){
        for (let inder in arr){
          let opt = new Option(arr[inder],inder);//创建一个下拉选项
          select.options.add(opt);//将选项添加到下拉列表中
        }
      }

      let province = document.getElementById("province");
      createOption(province, provinceArr);
      let city = document.getElementById("city");
      province.onchange = ()=>{
        //当前省份发生变化
        //清除原有城市下拉选项
        city.options.length = 0;
        createOption(city, cityArr[province.value]);
        //强制city刷新
        city.onchange();
      };

      let country = document.getElementById("country");
      city.onchange = () =>{
        //当城市发生变化,清除原有区域选项
        country.options.length = 0;
        createOption(country[province.value])
      };

    </script>
  </body>


    
</html>

 

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

逆游古河而上

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值