js省市二级联动

<!doctype html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>js省市二级联动</title>
</head>

<body>
    <div style="text-align: center">

        <select id="province" style="width:120px;">
            <option>请选择省/城市</option>
        </select>

        <select id="city" style="width:130px;">
            <option>请选择城市/地区</option>
        </select>
    </div>

    <script src="https://cdn.bootcss.com/jquery/1.12.4/jquery.min.js"></script>
    <script>

        //省市级联
        /* 
            使用二维数组储存  省市数据  二维数组:就是元素为一维数组的一个数组。
            这个二维数组的元素以省份作为索引
            一维数组的元素 保存的是城市数据
        */
        var cityList = new Array();
        cityList['北京市'] = ['朝阳区', '东城区', '西城区', '海淀区', '宣武区', '丰台区', '怀柔', '延庆', '房山'];
        cityList['上海市'] = ['宝山区', '长宁区', '丰贤区', '虹口区', '黄浦区', '青浦区', '南汇区', '徐汇区', '卢湾区'];
        cityList['广州省'] = ['广州市', '惠州市', '汕头市', '珠海市', '佛山市', '中山市', '东莞市'];
        cityList['深圳市'] = ['福田区', '罗湖区', '盐田区', '宝安区', '龙岗区', '南山区', '深圳周边'];
        cityList['重庆市'] = ['俞中区', '南岸区', '江北区', '沙坪坝区', '九龙坡区', '渝北区', '大渡口区', '北碚区'];
        cityList['天津市'] = ['和平区', '河西区', '南开区', '河北区', '河东区', '红桥区', '塘古区', '开发区'];
        cityList['江苏省'] = ['南京市', '苏州市', '无锡市'];
        cityList['浙江省'] = ['杭州市', '宁波市', '温州市'];
        cityList['四川省'] = ['四川省', '成都市'];
        cityList['海南省'] = ['海口市'];
        cityList['福建省'] = ['福州市', '厦门市', '泉州市', '漳州市'];
        cityList['山东省'] = ['济南市', '青岛市', '烟台市'];
        cityList['江西省'] = ['江西省', '南昌市'];
        cityList['广西省'] = ['柳州市', '南宁市'];
        cityList['安徽省'] = ['安徽省', '合肥市'];
        cityList['河北省'] = ['邯郸市', '石家庄市'];
        cityList['河南省'] = ['郑州市', '洛阳市'];
        cityList['湖北省'] = ['武汉市', '宜昌市'];
        cityList['湖南省'] = ['湖南省', '长沙市'];
        cityList['陕西省'] = ['陕西省', '西安市'];
        cityList['山西省'] = ['山西省', '太原市'];
        cityList['黑龙江省'] = ['黑龙江省', '哈尔滨市'];
        cityList['其他'] = ['其他'];

        for (var i in cityList) {
            //alert(i);
        }

        //添加省份
        function appendProvince() {
            for (var i in cityList) {
                $("#province").append("<option value=" + i + ">" + i + "</option>");
            }
        }
        //当省份改变时找出对应的城市数据
        $("#province").change(function () {
            var key = $(this).val();
            //获取选中的省份值
            var citys = cityList[key];
            $("#city").empty();//每次都先清空一下市级菜单 
            $("#city").append("<option>请选择城市/地区</option>");
            citys.forEach(element => {
                $("#city").append("<option value=" + element + ">" + element + "</option>");
            });
        });

        $(function () {
            //页面加载完成时,加载省份的数据
            appendProvince();
            console.log((cityList["山西省"]));
        });

    </script>
</body>

</html>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

暗恋花香

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

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

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

打赏作者

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

抵扣说明:

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

余额充值