三级联动

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

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        #box1 {
            display: none;
        }
        
        #box2 {
            display: none;
        }
    </style>
</head>

<body>
    <form>:<select name="" id="box"></select>
        <select name="" id="box1">
             <option value="">请选择</option>
         </select>
        <select name="" id="box2">
            <option value="">请选择</option>
        </select>
    </form>
    <script>
        var box = document.getElementById("box")
        var box1 = document.getElementById("box1")
        var box2 = document.getElementById("box2")
            // 设置包含全国所有省市的所有位置
        var locations = {
            '0': {
                1: '北京',
                2: '河北',
                3: '河南',
                4: '山东'
            },
            '1': {
                5: '北京市'
            },
            '5': {
                6: '昌平区',
                7: '通州区',
                8: '延庆'
            },
            '2': {
                9: '石家庄',
                10: '保定',
                11: '唐山'
            },
            '9': {
                12: '藁城',
                13: '正定',
                14: '赵县'
            },
            '10': {
                15: '满城',
                16: '定州',
                17: '涿州'
            },
            '11': {
                18: '玉田',
                19: '迁安',
                20: '黟县'
            },
            '3': {
                21: '郑州',
                22: '洛阳'
            },
            '21': {
                23: '金水区',
                24: '木水区',
                25: '深水区'
            },
            '22': {
                26: '牡丹区',
                27: '随便'
            },
        }
        console.log(locations[0])
            // 设置省份
        var ss = "<option value=''>请选择</option>"
            // 将所有的省份追加到str里面
        for (var i in locations[0]) {
            ss += "<option value='" + i + "'>" + locations[0][i]
            "</option>"
        }
        box.innerHTML = ss
        box.onchange = function() {
            // 获取省份下的所有的市区
            var ss1 = '<option value="">请选择</option>'
                // 遍历所有市
            for (var i in locations[this.value]) {
                ss1 += "<option value='" + i + "'>" + locations[this.value][i] + "</option>"
            }
            box1.style.display = "inline-block"
            box1.innerHTML = ss1;
        }
        box1.onclick = function() {
            var ss2 = "<option value=''>请选择</option>"
            for (var i in locations[this.value]) {
                ss2 += "<option value='" + i + "'>" + locations[this.value][i] + "</option>"
            }
            box2.style.display = "inline-block"
            box2.innerHTML = ss2;
        }
    </script>
</body>

</html>在这里插入代码片
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值