👈️ 问答首页
使用 layui 不需要请求任何API
只需要一个JSON数据 zone.js ( 复制到自己本地服务器 )
<script> let $ = layui.$, form = layui.form let provinceHtml = ``, cityHtml = ``, areaHtml = `` let provinceCityData = [], cityAreaData = [] // 首次进来默认渲染省市区 areaData.forEach(item => { provinceHtml += `` provinceCityData[item.value] = item.children item.children.forEach(item2 => { if (item.value == '110000') cityHtml += `` item2.children.forEach(item3 => { if (item.value == '110000') areaHtml += `` }) }) }) $('#province').html(provinceHtml) $('#city').html(cityHtml) $('#area').html(areaHtml) form.render('select'); // 监听省份选择 form.on('select(province)', function (data) { let value = data.value if (!value) return let cityHtml = `` let areaHtml = `` provinceCityData[value].forEach(item => { cityHtml += `` cityAreaData[item.value] = item.children item.children.forEach(item2 => { areaHtml += `` }) }) $('#city').html(cityHtml) $('#area').html(areaHtml) form.render('select') }) // 监听城市选择 form.on('select(city)', function (data) { let value = data.value if (!value) return let areaHtml = `` cityAreaData[value].forEach(item => { areaHtml += `` }) $('#area').html(areaHtml) form.render('select') }) form.on('submit(ids)', function (data) { let field = data.field layer.alert(`获取到的省市区ID为:${field.province}、${field.city}、${field.area}`) }) form.on('submit(texts)', function (data) { let province = $('#province option:selected').text() let city = $('#city option:selected').text() let area = $('#area option:selected').text() layer.alert(`获取到的省市区文本为:${province}-${city}-${area}`) }) </script>