Bootstrap省市区三级联动菜单

16 篇文章 0 订阅
6 篇文章 0 订阅

这是一个简单基于Bootstrap省市区三级联动菜单,数据源可以修改通过修改javascript

html:

                                <div class="modal-body">
                                    <!-- 省市区三级联动 begin -->
                                    <div class="form-group">
                                        <label class="col-sm-2 control-label"><i>*</i>所在地址</label>
                                        <div class="col-sm-3">
                                            <select name="input_province" id="input_province" class="form-control" >
                                                <option value="">--请选择--</option>
                                            </select>
                                        </div>
                                        <div class="col-sm-3">
                                            <select name="input_city" id="input_city" class="form-control">
                                                <option value=""></option>
                                            </select>
                                        </div>
                                        <div class="col-sm-3">
                                            <select name="input_area" id="input_area" class="form-control">
                                                <option value=""></option>
                                            </select>
                                        </div>
                                    </div>
                                    <!-- 省市区三级联动 end-->
                                </div>

javascript:

<!-- 三级联动 begin -->
<script type="text/javascript" src="<%=basePath%>resource/assets/js/address.js"></script>
<script >
    function address() {
        var html = "";
        $("#input_city").append(html);
        $("#input_area").append(html);
        $.each(pdata,function(idx,item){
            if (parseInt(item.level) == 0) {
                html += "<option value="+item.code+" >"+ item.names +"</option> ";
            }
        });
        $("#input_province").append(html);

        $("#input_province").change(function(){
            if ($(this).val() == "") return;
            $("#input_city option").remove();
            $("#input_area option").remove();
            //var code = $(this).find("option:selected").attr("exid");
            var code = $(this).find("option:selected").val();
            code = code.substring(0,2);
            var html = "<option value=''>--请选择--</option>";
            $("#input_area option").append(html);
            $.each(pdata,function(idx,item){
                if (parseInt(item.level) == 1 && code == item.code.substring(0,2)) {
                    html +="<option value="+item.code+" >"+ item.names +"</option> ";
                }
            });
            $("#input_city ").append(html);
        });

        $("#input_city").change(function(){
            if ($(this).val() == "") return;
            $("#input_area option").remove();
            var code = $(this).find("option:selected").val();
            code = code.substring(0,4);
            var html = "<option value=''>--请选择--</option>";
            $.each(pdata,function(idx,item){
                if (parseInt(item.level) == 2 && code == item.code.substring(0,4)) {
                    html +="<option value="+item.code+" >"+ item.names +"</option> ";
                }
            });
            $("#input_area ").append(html);
        });
    }
</script>
<!-- 三级联动 end -->

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
对于Bootstrap省市区三级联动,你可以使用Bootstrap框架结合JavaScript来实现。以下是一个简单的示例: HTML部分: ```html <div class="form-group"> <label for="province">省份:</label> <select class="form-control" id="province"> <option value="">请选择</option> <!-- 这里可以根据实际需要动态生成省份选项 --> <option value="北京">北京</option> <option value="上海">上海</option> <option value="广东">广东</option> </select> </div> <div class="form-group"> <label for="city">城市:</label> <select class="form-control" id="city"> <option value="">请选择</option> <!-- 这里的选项会根据选择的省份动态生成 --> </select> </div> <div class="form-group"> <label for="district">区县:</label> <select class="form-control" id="district"> <option value="">请选择</option> <!-- 这里的选项会根据选择的城市动态生成 --> </select> </div> ``` JavaScript部分: ```javascript $(document).ready(function() { // 省份数据 var provinceData = [ { name: '北京', cities: ['北京市'] }, { name: '上海', cities: ['上海市'] }, { name: '广东', cities: ['广州市', '深圳市', '东莞市'] } // 其他省份数据... ]; // 城市数据 var cityData = { '北京': ['北京市'], '上海': ['上海市'], '广东': ['广州市', '深圳市', '东莞市'] // 其他省份城市数据... }; // 初始化省份选项 var provinceSelect = $('#province'); for (var i = 0; i < provinceData.length; i++) { provinceSelect.append('<option value="' + provinceData[i].name + '">' + provinceData[i].name + '</option>'); } // 省份选择改变时动态更新城市选项 provinceSelect.change(function() { var selectedProvince = $(this).val(); var citySelect = $('#city'); var districtSelect = $('#district'); // 清空城市和区县选项 citySelect.empty(); districtSelect.empty(); // 根据选择的省份添加对应的城市选项 if (selectedProvince) { var cities = cityData[selectedProvince]; for (var j = 0; j < cities.length; j++) { citySelect.append('<option value="' + cities[j] + '">' + cities[j] + '</option>'); } } }); // 城市选择改变时动态更新区县选项 $('#city').change(function() { var selectedCity = $(this).val(); var districtSelect = $('#district'); // 清空区县选项 districtSelect.empty(); // 根据选择的城市添加对应的区县选项 // 可以根据实际情况使用Ajax请求获取区县数据 }); }); ``` 请注意,这只是一个简单的示例,省份、城市和区县的数据可以根据实际情况进行修改和扩展。你可以根据自己的需求调整代码以适应你的项目。希望对你有所帮助!
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值