当前位置: 首页 > news >正文

vue 省市县三级联动

1、

<template><div>所在省<el-select popper-class="eloption" :popper-append-to-body="true"@change="getShiList(obj.province)" v-model="obj.province" placeholder="请选择所在省" clearable@clear="removeSheng()"><el-option v-for="(item, index) in shengList" :key="item.code" :value="item.name" :label="item.name" /></el-select>所在市<el-select popper-class="eloption" :popper-append-to-body="true"@change="getAreaList(obj.city)" v-model="obj.city" placeholder="请选择所在市" clearable @clear="removeShi()"><el-option v-for="(item, index) in shiList" :key="item.code" :value="item.name" :label="item.name" /></el-select>所在区<el-select popper-class="eloption" :popper-append-to-body="true" @change="$forceUpdate()"v-model="obj.area" placeholder="请选择所在区" clearable><el-option v-for="(item, index) in areaList" :key="item.code" :value="item.name" :label="item.name" /></el-select></div>
</template><script>
const arr = require('@/assets/city.js');
export default {data() {return {shengList: arr.default,shiList: [],  //arr.default[0].code  北京市一个对象,其他省可有多个市areaList: [],obj: {// province:'',// city: '',// area: '',},}},methods:{// 获得市getShiList(shengName) {this.$forceUpdate()this.obj.city = ''this.obj.area = ''this.shengList.forEach(v => {if (v.name == shengName) {this.shiList = v.children}})},// 获得区getAreaList(shiName) {this.$forceUpdate()this.obj.area = ''this.shiList.forEach(v => {if (v.name == shiName) {this.areaList = v.children}})},removeSheng(e){console.log("删除省")this.$forceUpdate()// this.obj.sheng = ''// this.obj.city = ''// this.obj.area = ''this.shiList = []this.areaList = []},removeShi(e){console.log("删除shi")this.$forceUpdate()// this.obj.city = ''// this.obj.area = ''this.areaList = []},}
}
</script><style></style>

2、city.js
文件太大了
https://download.csdn.net/download/Ann_52547/87755408
格式是这样的:

const arr = [
{"code": "11","name": "北京市","children": [{"code": "1101","name": "北京市","children": [{"code": "110101","name": "东城区"},{"code": "110102","name": "西城区"}]}]}

参考:
1、这个文件可以下载
省市区三级联动城市数据js文件。(复制后放入citys.js文件中,可自定义文件名)
2、distpicker插件编写
vue实现省市县三级联动,超简单
3、vue中实现省市区三级联动(V-Distpicker插件)

http://www.lryc.cn/news/64817.html

相关文章:

  • ChatGPT实现编程语言转换
  • 浅拷贝和深拷贝
  • 进程地址空间与页表方面知识点(缺页中断及写时拷贝部分原理)
  • Photoshop如何使用滤镜之实例演示?
  • Flutter 组件抽取:日期(DatePicker)、时间(TimePicker)弹窗选择器【仿照】
  • 基于opencv的YOLOV3对图片的目标检测
  • Mermaid流程图
  • 国产!全志科技T507-H工业核心板( 4核ARM Cortex-A5)规格书
  • java小记 2023-05-05
  • CentOS安装Nginx
  • CSS布局基础(CSS书写顺序 导航栏写法 常见问题)
  • 打造卓越 QML 层级设计:从入门到精通
  • shell流程控制之条件判断练习
  • linux中TF启动卡制作:磁盘分区文件同步
  • 【操作系统OS】学习笔记:第一章 操作系统基础【哈工大李治军老师】
  • Linux C/C++ 网络编程中地址格式转换(inet_pton和inet_ntop函数)
  • 庖丁解牛函数知识---C语言《2》
  • Git 使用教程:最详细、最正宗手把手教学(万字长文)
  • 【华为OD机试 2023最新 】最优资源分配/芯片资源占用(C语言题解 100%)
  • markdown二元运算符
  • 【华为/华三】PPP
  • 【Java笔试强训 9】
  • 【C++】STL标准库之list
  • Nomogram | 盘点一下绘制列线图的几个R包!~(二)
  • Django之定时任务django-crontab
  • linux常见命令
  • 【14.HTML-移动端适配】
  • 平衡二叉树旋转机制
  • 深入浅出C++ ——C++11
  • 智能座舱3.0阶段,看全球巨头如何打造更具“价值”的第三空间