中国省份城市二级联动jquery实现【包括2020城市数据】

    技术2022-07-10  91

    本文描述的省份和城市二级联动下拉菜单,在js部分设置省份和城市信息,当然也可以将数据保存在数据库中,当需要使用的时候在读取。这里用的是js原生代码

    这里是城市省份数据

    var province=["北京","上海","广东","江苏","浙江","重庆","安徽","福建","甘肃","广西", "贵州","海南","河北","黑龙江","河南","湖北","湖南","江西","吉林","辽宁","内蒙古", "宁夏","青海","山东","山西","陕西","四川","天津","新疆","西藏","云南","香港", "澳门","台湾","海外"]; var city=[["东城","西城","朝阳","丰台","石景山","海淀","门头沟","房山","通州","顺义","昌平","大兴","平谷","怀柔","密云","延庆"], ["崇明","黄浦","卢湾","徐汇","长宁","静安","普陀","闸北","虹口","杨浦","闵行","宝山","嘉定","浦东","金山","松江","青浦","南汇","奉贤"], ["广州","深圳","珠海","东莞","中山","佛山","惠州","河源","潮州","江门","揭阳","茂名","梅州","清远","汕头","汕尾","韶关","顺德","阳江","云浮","湛江","肇庆"], ["南京","常熟","常州","海门","淮安","江都","江阴","昆山","连云港","南通","启东","沭阳","宿迁","苏州","太仓","泰州","同里","无锡","徐州","盐城","宜兴","仪征","张家港","镇江","周庄"], ["杭州","安吉","慈溪","定海","奉化","海盐","黄岩","湖州","嘉兴","金华","临安","临海","丽水","宁波","瓯海","平湖","千岛湖","衢州","江山","瑞安","绍兴","嵊州","台州","温岭","温州","余姚","舟山"], ["万州","涪陵","渝中","大渡口","江北","沙坪坝","九龙坡","南岸","北碚","万盛","双桥","渝北","巴南","黔江","长寿","綦江","潼南","铜梁","大足","荣昌","璧山","梁平","城口","丰都","垫江","武隆","忠县","开县","云阳","奉节","巫山","巫溪","石柱","秀山","酉阳","彭水","江津","合川","永川","南川"], ["合肥","安庆","蚌埠","亳州","巢湖","滁州","阜阳","贵池","淮北","淮南","黄山","九华山","六安","马鞍山","宿州","铜陵","屯溪","芜湖","宣城"], ["福州","厦门","泉州","漳州","龙岩","南平","宁德","莆田","三明"], ["兰州","白银","定西","敦煌","甘南","金昌","酒泉","临夏","平凉","天水","武都","武威","西峰","张掖"], ["南宁","百色","北海","桂林","防城港","贵港","河池","贺州","柳州","钦州","梧州","玉林"], ["贵阳","安顺","毕节","都匀","凯里","六盘水","铜仁","兴义","玉屏","遵义"], ["海口","儋县","陵水","琼海","三亚","通什","万宁"], ["石家庄","保定","北戴河","沧州","承德","丰润","邯郸","衡水","廊坊","南戴河","秦皇岛","唐山","新城","邢台","张家口"], ["哈尔滨","北安","大庆","大兴安岭","鹤岗","黑河","佳木斯","鸡西","牡丹江","齐齐哈尔","七台河","双鸭山","绥化","伊春"], ["郑州","安阳","鹤壁","潢川","焦作","济源","开封","漯河","洛阳","南阳","平顶山","濮阳","三门峡","商丘","新乡","信阳","许昌","周口","驻马店"], ["武汉","恩施","鄂州","黄冈","黄石","荆门","荆州","潜江","十堰","随州","武穴","仙桃","咸宁","襄阳","襄樊","孝感","宜昌"], ["长沙","常德","郴州","衡阳","怀化","吉首","娄底","邵阳","湘潭","益阳","岳阳","永州","张家界","株洲"], ["南昌","抚州","赣州","吉安","景德镇","井冈山","九江","庐山","萍乡","上饶","新余","宜春","鹰潭"], ["长春","吉林","白城","白山","珲春","辽源","梅河","四平","松原","通化","延吉"], ["沈阳","鞍山","本溪","朝阳","大连","丹东","抚顺","阜新","葫芦岛","锦州","辽阳","盘锦","铁岭","营口"], ["呼和浩特","阿拉善盟","包头","赤峰","东胜","海拉尔","集宁","临河","通辽","乌海","乌兰浩特","锡林浩特"], ["银川","固源","石嘴山","吴忠"], ["西宁","德令哈","格尔木","共和","海东","海晏","玛沁","同仁","玉树"], ["济南","滨州","德州","东营","菏泽","济宁","莱芜","聊城","临沂","蓬莱","青岛","曲阜","日照","泰安","潍坊","威海","烟台","枣庄","淄博"], ["太原","长治","大同","侯马","晋城","离石","临汾","宁武","朔州","沂州","阳泉","榆次","运城"], ["西安","安康","宝鸡","汉中","渭南","商州","绥德","铜川","咸阳","延安","榆林"], ["成都","巴中","达川","德阳","都江堰","峨眉山","涪陵","广安","广元","九寨沟","康定","乐山","泸州","马尔康","绵阳","眉山","南充","内江","攀枝花","遂宁","汶川","西昌","雅安","宜宾","自贡","资阳"], ["天津","和平","东丽","河东","西青","河西","津南","南开","北辰","河北","武清","红桥","塘沽","汉沽","大港","宁河","静海","宝坻","蓟县"], ["乌鲁木齐","阿克苏","阿勒泰","阿图什","博乐","昌吉","东山","哈密","和田","喀什","克拉玛依","库车","库尔勒","奎屯","石河子","塔城","吐鲁番","伊宁"], ["拉萨","阿里","昌都","林芝","那曲","日喀则","山南"], ["昆明","大理","保山","楚雄","东川","个旧","景洪","开远","临沧","丽江","六库","潞西","曲靖","思茅","文山","西双版纳","玉溪","中甸","昭通"], ["香港","九龙","新界"], ["澳门"], ["台北","基隆","台南","台中","高雄","屏东","南投","云林","新竹","彰化","苗栗","嘉义","花莲","桃园","宜兰","台东","金门","马祖","澎湖"], ["俄罗斯","美国","日本","英国","法国","德国","澳大利亚","东南亚","阿拉伯半岛","非洲","南美洲"]];

    html代码

     

    <div class="col-md-6"> <label for="showMethod">生产省份</label> <select style="margin-bottom:15px;" class="form-control" id="province" > <option value="none">----请选择----</option> </select> </div> <div class="col-md-6"> <label for="showMethod">生产城市 </label> <select class="form-control" id="city"> <option value="none">----请选择----</option> </select> </div>

     

    js代码

    var iNum1; var iNum2; $(function () { //首先遍历省,直接append到id为province的select选择框之中 for(var i=0;i<province.length;i++){ $('#province').append('<option>'+province[i]+'</option>'); }; //如果检测到省级被改变,则触发下面的城市操作 $('#province').change(function () { $('#city').children().not(':eq(0)').remove();//当选择其他省的时候,把之前市的内容清空掉 iNum1 = $(this).children('option:selected').index();//获取你所选取的省对应的位置 var aaCity = city[iNum1-1]; for(var j=0;j<aaCity.length;j++){ $('#city').append('<option>'+aaCity[j]+'</option>'); } //通过iNum;这一行中  city[iNum-1],表示的是,譬如你选A省,city[iNum-1]数组表示的就是A省下面对应的市;iNum-1  这里减去1的意思是,因为在下拉框里面我们第一行有个---请选择----,要把这个去掉,才能对应上。然后遍历aaCity,把对应的市插入进去; }); })

     

    感谢https://blog.csdn.net/yanchenxi313761/article/details/79731900?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-4.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-4.nonecase

    和https://blog.csdn.net/weixin_33843947/article/details/92480227?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3.nonecase

    对本文的帮助

    Processed: 0.012, SQL: 9