会员管理-省市区联动bug

master
382696293@qq.com 2 years ago
parent 3359fb49d0
commit bf460ad63d

@ -62,7 +62,7 @@
</el-form-item> </el-form-item>
<el-form-item label="省" prop="provinceId"> <el-form-item label="省" prop="provinceId">
<el-select v-model="queryParams.provinceId" @change="getCityList(queryParams.provinceId)" <el-select v-model="queryParams.provinceId" @change="getCityList(queryParams.provinceId)"
@keyup.enter.native="handleQuery" filterable clearable> @keyup.enter.native="handleQuery" filterable clearable @clear="clearOption(1)">
<el-option <el-option
v-for="item in provinceList" v-for="item in provinceList"
:key="item.id" :key="item.id"
@ -72,7 +72,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="市" prop="cityId"> <el-form-item label="市" prop="cityId">
<el-select v-model="queryParams.cityId" @change="getAreaByPid(queryParams.cityId)" <el-select v-model="queryParams.cityId" @change="getAreaByPid(queryParams.cityId)" @clear="clearOption(2)"
@keyup.enter.native="handleQuery" filterable clearable placeholder="请选择省"> @keyup.enter.native="handleQuery" filterable clearable placeholder="请选择省">
<el-option <el-option
v-for="item in cityList" v-for="item in cityList"
@ -344,8 +344,8 @@
</template> </template>
</el-form-item> </el-form-item>
<el-form-item label="省" prop="provinceId" style="width: 40%"> <el-form-item label="省" prop="provinceId" style="width: 40%">
<el-select v-model="form.provinceId" @change="getCityList(form.provinceId,true)" filterable clearable <el-select v-model="form.provinceId" @change="getSaveCityList(form.provinceId)" @clear="clearSaveOption(1)"
placeholder="请选择省"> filterable clearable placeholder="请选择省">
<el-option <el-option
v-for="item in provinceList" v-for="item in provinceList"
:key="item.id" :key="item.id"
@ -355,8 +355,8 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="市" prop="cityId" style="width: 40%"> <el-form-item label="市" prop="cityId" style="width: 40%">
<el-select v-model="form.cityId" @change="getAreaByPid(form.cityId, true)" filterable clearable <el-select v-model="form.cityId" @change="getSaveAreaByPid(form.cityId)" @clear="clearSaveOption(2)"
placeholder="请选择省"> filterable clearable placeholder="请选择省">
<el-option <el-option
v-for="item in saveCityList" v-for="item in saveCityList"
:key="item.id" :key="item.id"
@ -800,7 +800,6 @@ export default {
chatTagOptions: [], chatTagOptions: [],
scriptOptions: [], scriptOptions: [],
tagIdArray: [], tagIdArray: [],
// - // -
batchOperateValue: null, batchOperateValue: null,
// //
@ -1049,13 +1048,18 @@ export default {
this.wecomTagTree = response.data; this.wecomTagTree = response.data;
}); });
}, },
// // -
getProvinceList() { getProvinceList() {
getRegionByPid(0).then(Response => { getRegionByPid(0).then(Response => {
this.provinceList = Response.data this.provinceList = Response.data
}) })
}, },
getCityList(pid, isSave) { getCityList(pid, isSave) {
if (pid == '') {
return;
}
this.queryParams.cityId = null;
this.queryParams.areaId = null;
getRegionByPid(pid).then(Response => { getRegionByPid(pid).then(Response => {
if (isSave) { if (isSave) {
this.saveCityList = Response.data; this.saveCityList = Response.data;
@ -1065,6 +1069,10 @@ export default {
}) })
}, },
getAreaByPid(pid, isSave) { getAreaByPid(pid, isSave) {
if (pid == '') {
return;
}
this.queryParams.areaId = null;
getRegionByPid(pid).then(Response => { getRegionByPid(pid).then(Response => {
if (isSave) { if (isSave) {
this.saveAreaList = Response.data; this.saveAreaList = Response.data;
@ -1073,6 +1081,55 @@ export default {
} }
}) })
}, },
// -
clearOption(option) {
//
if (option == 1) {
this.queryParams.cityId = null;
this.queryParams.areaId = null;
this.cityList = null;
this.areaList = null;
}
//
if (option == 2) {
this.queryParams.areaId = null;
this.areaList = null;
}
},
// -
getSaveCityList(pid) {
if (pid == '') {
return;
}
this.form.cityId = null;
this.form.areaId = null;
getRegionByPid(pid).then(Response => {
this.saveCityList = Response.data;
})
},
getSaveAreaByPid(pid) {
if (pid == '') {
return;
}
this.form.areaId = null;
getRegionByPid(pid).then(Response => {
this.saveAreaList = Response.data;
})
},
clearSaveOption(option) {
//
if (option == 1) {
this.form.cityId = null;
this.form.areaId = null;
this.saveCityList = null;
this.saveAreaList = null;
}
//
if (option == 2) {
this.form.areaId = null;
this.saveAreaList = null;
}
},
// //
cancel() { cancel() {
this.open = false; this.open = false;

Loading…
Cancel
Save