vue2-省市县三级联动选择框

Json数据:https://yjy-oss-files.oss-cn-zhangjiakou.aliyuncs.com/tuxian/area.json

 如何访问本地文件参考:vue-访问本地json文件_vue3读取json文件-CSDN博客

 .vue文件:

<template>
           <select v-model="mailAddress1" style="width: 19rem;" @change="provinceChange">
            <option :value="item" v-for="(item, index) in provinceList" :key="index">{{ item.name }}</option>
          </select>
          <select v-model="mailAddress2" style="width: 19rem;margin-left:1rem;" @change="cityChange">
            <option :value="item" v-for="(item, index) in cityList" :key="index">{{ item.name }}</option>
          </select>
          <select v-model="mailAddress3" style="width: 19rem;margin-left:1rem;">
            <option :value="item" v-for="(item, index) in countyList" :key="index">{{ item.name }}</option>
          </select>
</template>
<script>
export default {
  data() {
    return {
      mailAddress1: '',
      mailAddress2: '',
      mailAddress3: '',
      provinceList: '',
      cityList: '',
      countyList: ''
    };
  },
  mounted() {
    fetch('/addData.json')
      .then(response => response.json())
      .then(res => {
        this.provinceList = res
      });
  },
  methods: {
    provinceChange() {
      this.cityList = this.mailAddress1.areaList
      this.countyList = ""
    },
    cityChange() {
      this.countyList = this.mailAddress2.areaList
    }
  }
}
</script>
  • 12
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值