<form class="form-horizontal" role="form">
<div id="chooseRegion" class="form-group">
<label class="col-sm-2 control-label">地址</label>
<div class="col-xs-2" id="provinceTop">
<select class="form-control province" onchange="getProvinceID();"></select>
</div>
<div class="col-xs-2" id="cityTop">
<select class="form-control city" onchange="getCityID()"></select>
</div>
<div class="col-xs-2 " id="districtTop">
<select class="form-control district" onchange="getDistrictID()"></select>
</div>
<div class="col-xs-2" class="streetJD" id="streetTop">
<select class="form-control street" onchange="getStreetID()"></select>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">详细地址</label>
<div class="col-sm-4" style="position: relative;width:66.65%;">
<input type="text" class="form-control detailAddress" placeholder="详细地址"/>
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="button" class="btn btn-primary" id="update_parking">编辑</button>
</div>
</div>
</form>
<!--根据地址信息进行截取,每3个进行截取,然后调用接口进行模糊查询,再次调用接口push进select进行选择修改操作-->
//清空选项
$(function () {
getProvince();
});//省份列表
function getProvince(){
const style=
$.get(url,
function (data) {
setTimeout(()=>{
var reg=new RegExp($('.detailAddress').val().substring(0,3));
data.map((item,index)=>{
if(reg.test(item.name)){
//console.log(item.name,"hhhhh");
$('.province').append("<option value='"+item.id+"'>"+item.name+"</option>");
if(item.name.length>5){
$('#provinceTop').css('width','22.5%');
}
addProvince();
//console.log($('.detailAddress').val().substring(item.name.length,item.name.length+3),"tset");
getCity(item.id,item.name.length,item.name.length+3);
}
})
},35)
})
}
//城市列表
function getCity(parking,min,max){
$.get(url, {
id: parking,
},
function (data, status) {
setTimeout(()=>{
var reg=new RegExp($('.detailAddress').val().substring(min,max));
data.map((item,index)=>{
if(reg.test(item.name)){
$('.city').append("<option value='"+item.id+"'>"+item.name+"</option>");
if(item.name.length>5){
$('#cityTop').css('width','23.5%');
}
$.get(url, {
id: parking,
},
function (data, status) {
for (var i = 0; i < data.length; i++) {
$(".city").append('<option value="' + data[i].id + '">' + data[i].name + '</option>');
}
});
getCityCount(item.id,item.name.length+min,item.name.length+min+3);
}
})
},35)
});
}
//县区列表
function getCityCount(parking,min,max){
var test=['镇','街道'];
$.get(url,
{id: parking},
function (data) {
//console.log(data,"sfas");
setTimeout(()=>{
var reg=new RegExp($('.detailAddress').val().substring(min,max));
data.map((item,index)=>{
if(reg.test(item.name)){
$('.district').append("<option value='"+item.id+"'>"+item.name+"</option>");
getCityStreet(item.id,item.name.length+min,item.name.length+min+3);
}
$.get(url,
{id: parking},
function (data) {
//console.log(data,"sfas");
$('.district').append("<option value='"+item.id+"'>"+item.name+"</option>");
}
)
})
},35)
}
)
};
//街道列表
function getCityStreet(parking,min,max){
$.get(url, {
id: parking,
},
function (data) {
//console.log(data,"街道");
setTimeout(()=>{
var reg=new RegExp($('.detailAddress').val().substring(min,max));
data.map((item,index)=>{
if(reg.test(item.name)){
$('.street').append("<option value='"+item.id+"'>"+item.name+"</option>");
if(item.name.length>5){
$('#streetTop').css('width','19%');
}
}
$.get(url, {
id: parking,
},
function (data) {
//console.log(data,"街道");
$('.street').append("<option value='"+item.id+"'>"+item.name+"</option>");
}
)
})
},35)
}
)
};
//获取选择的省份
function getProvinceID() {
$('.detailAddress').val('');
$(".city").empty(); //重新选择省份时,先清空city的数据,防止重复append
$('.city').append('<option>请选择</option>');
$(".district").empty(); //重新选择省份时,先清空city的数据,防止重复append
$('.district').append('<option>请选择</option>');
$(".street").empty(); //重新选择省份时,先清空city的数据,防止重复append
$('.street').append('<option>请选择</option>');
var province_id = $(".province option:selected").val();
var province = $(".province option:selected").text();
var province_info = province_id + "_" + province;
addProvince();
$.get(url, {
id: province_id,
},
function (data, status) {
$('.detailAddress').val($(".province option:selected").text());
$(".city").empty(); //重新选择省份时,先清空city的数据,防止重复append
$('.city').append('<option>请选择</option>');
for (var i = 0; i < data.length; i++) {
$(".city").append('<option value="' + data[i].id + '">' + data[i].name + '</option>');
console.log(data[i].name);
}
});
return province_info;
}
//获取选择的城市
function getCityID() {
$(".district").empty(); //重新选择省份时,先清空city的数据,防止重复append
$('.district').append('<option>请选择</option>');
$(".street").empty(); //重新选择省份时,先清空city的数据,防止重复append
$('.street').append('<option>请选择</option>');
var province_id = $(".city option:selected").val();
var province = $(".city option:selected").text();
var province_info = province_id + "_" + province;
$.get(url,
{id: province_id},
function (data) {
console.log(data,"城市的下一级");
data.map((item,index)=>{
//console.log(data,"sfas");
$('.district').append("<option value='"+item.id+"'>"+item.name+"</option>");
})
}
)
return province_info;
}
//获取选择的县区
function getDistrictID() {
$(".street").empty(); //重新选择省份时,先清空city的数据,防止重复append
$('.street').append('<option>请选择</option>');
var district_id = $(".district option:selected").val();
var district = $(".district option:selected").text();
$('.detailAddress').val($(".province option:selected").text()+$(".city option:selected").text()+$(".district option:selected").text());
var district_info = district_id + "_" + district;
$.get(url, {
id: district_id,
},
function (data, status) {
console.log(data);
//$("#street").empty(); //重新选择省份时,先清空city的数据,防止重复append
// $('#street').append('<option>请选择</option>');
console.log("street" + data.length)
if (data.length == 0) {
$(".street").hide();
}
if (data.length != 0) {
$(".street").show();
for (var i = 0; i < data.length; i++) {
$(".street").append('<option value="' + data[i].id + '">' + data[i].name + '</option>');
}
}
});
return district_info;
}
//获取选择的街道
function getStreetID() {
var street_id = $(".street option:selected").val();
var street = $(".street option:selected").text();
$('.detailAddress').val($(".province option:selected").text()+$(".city option:selected").text()+$(".district option:selected").text()+$(".street option:selected").text());
var street_info = street_id + "_" + street;
return street_info;
}
//更新数据
$(function () {})