微信小程序 省市县三级联动

最近想实现小程序中地址方面的省市县的三级联动功能,最开始以为微信没有提供这样的功能,我就利用picker-view自己实现了这个功能,后面发现可以直接利用picker来实现,我接下来介绍两种方法,picker最好实现,直接调用即可,picker-view需要自己设计。

picker, 在微信开放文档中小程序的组件-表单组件中就可以看到,

利用picker主要就是利用其中的mode属性 ,mode属性包含

selector普通选择器 
multiSelector多列选择器 
time时间选择器 
date日期选择器 
region省市区选择器

       我们只需要把mode属性设置为region 即可使用,接下来看怎么使用

<!-- wxml -->
<picker mode="region" bindchange="bindRegionChange">
    <view>
      我的地址:{{myregion[0]}} {{myregion[1]}} {{myregion[2]}}
    </view>
</picker>

    我们只需要把mode设置为region属性,然后绑定一个change函数"bingRgionChange",当我们选择地址的时候picker回返回一个地址,其中myregion是我自己的地址,每次change函数发生的时候,我会重新复制给myregion,看一下js文件中怎么写的

Page({

  data: {
    myregion: ["北京市", "市辖区", "东城区"]
  },

  bindRegionChange:function(e){
    console.log(e)    //查看事件返回值
    this.setData({myregion:e.detail.value})    //重新复制给myregion
  }
})    

看一下e的参数有哪些,我点击文字,选择一个地址,然后看返回的值:

 可以看到detail返回了三个结果code,postcode和value,很明显value就是我选的那个地址,只需要将这个地址重新赋值给myregion就可以了, code 是统计用区划代码,postcode 是邮政编码,这样我们就实现了三级联动的功能

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值