实现两个select之间的两极联动

本文介绍了一种联动省市选择器的实现方式,包括一次性加载所有数据并在客户端进行处理的方法,以及通过AJAX按需获取数据的方式。提供了具体的JavaScript代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


    



(i厂房网http://www.icf8.com/cutcity.jsp)

联动想到的有两种做法:
1.一次拉取全部省市数据,在本地(JS中)对省市分组,这时候再点击省选项select1的时候直接筛选市数据放置select2中;
2.ajax根据省code请求数据,当点击省选项select1的时候,请求数据,将返回的市数据放置到select2中;


贴几行JS CODE
$("#select_open_province").on('change', function () {
        var selectId = $('#select_open_province option:selected');
        var select_province_code = selectId.data('province_code');
        var html = "";
        for (var i = 0; i < Object.keys(opencity).length; i++) {
            if (select_province_code == opencity[i]['province_code']) {
                html += "<option data-domain='" + opencity[i]['domain'] + "'value='" + opencity[i]['city_code'] + "'>" + opencity[i]['city_name'] + "</option>";
            }
        }
        $('#select_open_city').html(html);
        $('#select_open_city')[0].selectedIndex = -1;
        $("#select_open_city").removeAttr("disabled");
    });

    $("#select_open_city").on('change', function () {
        var selectId = $('#select_open_city option:selected');
        var domain = selectId.data('domain');
        window.location.href = "http://" + domain + "{$bdomain}";
    });


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

dnbug Blog

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

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

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

打赏作者

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

抵扣说明:

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

余额充值