`
walker_v5
  • 浏览: 33950 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

小程序省市区调用微信原生代码

阅读更多

微信小程序 调用原生微信api 实现省市区地址选择

// page/address/edit.js
Page({
  data:{},
  onLoad:function(options){
    // 页面初始化 options为页面跳转所带来的参数
  },
  bingAddressTap:function(){
    var that = this;
    wx.chooseLocation({
      success: function(res){
        var regex = /^(北京市|天津市|重庆市|上海市|香港特别行政区|澳门特别行政区)/;
        var REGION_PROVINCE=[];
        var addressBean = {
          REGION_PROVINCE:null,
          REGION_COUNTRY:null,
          REGION_CITY:null,
          ADDRESS:null};
        function regexAddressBean(address, addressBean){
            regex = /^(.*?[市州]|.*?地区|.*?特别行政区)(.*?[市区县])(.*?)$/g;
            var addxress = regex.exec(address);
            addressBean.REGION_CITY=addxress[1];
            addressBean.REGION_COUNTRY=addxress[2];
            addressBean.ADDRESS=addxress[3]+"("+res.name+")";
            console.log(addxress);
        }
        if(!(REGION_PROVINCE = regex.exec(res.address))){
          regex = /^(.*?(省|自治区))(.*?)$/;
          REGION_PROVINCE = regex.exec(res.address);
          addressBean.REGION_PROVINCE= REGION_PROVINCE[1];
          regexAddressBean(REGION_PROVINCE[3],addressBean);
        } else {
          addressBean.REGION_PROVINCE= REGION_PROVINCE[1];
          regexAddressBean(res.address, addressBean);
        }
        that.setData({ADDRESS_1_STR:
        addressBean.REGION_PROVINCE+" "
        +addressBean.REGION_CITY+""
        +addressBean.REGION_COUNTRY });
        that.setData(addressBean);
      }
    })
  },
  onReady:function(){
    // 页面渲染完成
  },
  onShow:function(){
    // 页面显示
  },
  onHide:function(){
    // 页面隐藏
  },
  onUnload:function(){
    // 页面关闭
  }
})

 以上是js 代码

 

网页部分(wxml)

<view class="info">
    <text>收货地址</text>
    <input bindfocus="bingAddressTap" value="{{REGION_PROVINCE}}{{REGION_CITY}}{{REGION_COUNTRY}}" placeholder="小区/大厦/学校"/>
</view>
<view class="info">
    <text>详细地址</text>
    <textarea auto-height="true" placeholder="详细地址(如门牌号等)" value="{{ADDRESS}}"/>
</view>

 

点击收货地址后面的文本框,就能选中了

 预览效果



 

  • 大小: 750 KB
0
0
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics