最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

微信小程序?qū)崿F(xiàn)選擇地址省市區(qū)三級聯(lián)動

 更新時間:2020年06月21日 09:33:22   作者:上木—下水  
這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)選擇地址省市區(qū)三級聯(lián)動,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了微信小程序?qū)崿F(xiàn)選擇地址省市區(qū)三級聯(lián)動的具體代碼,供大家參考,具體內(nèi)容如下

微信原生地址API,缺少省市區(qū)code,因此自己寫了一個收貨地址

思路:在onload預(yù)先加載全部省和第一個省的全部市和區(qū),加載全部會導(dǎo)致幾秒的事件阻塞。點(diǎn)擊選擇地址彈窗后,按需加載操作,滑動省加載對應(yīng)的市和第一個市對應(yīng)的區(qū),滑動市加載區(qū),滑動區(qū)只更改區(qū)的值

onLoad: function(options) {
 var that = this;
 // 此文件為全部省以及第一個省的市和區(qū)
 var cityData = districtLoad.districtLoad;
 // 存放省 
 const provinces = [];
 // 存放市
 const citys = [];
 // 存放區(qū)
 const countys = [];
 for (let i = 0; i < cityData.length; i++) {
  provinces.push(cityData[i]);
 }
 for (let i = 0; i < cityData[0].sub.length; i++) {
  citys.push(cityData[0].sub[i])
 }
 for (let i = 0; i < cityData[0].sub[0].sub.length; i++) {
  countys.push(cityData[0].sub[0].sub[i])
 }
 that.setData({
  provinces,
  citys,
  countys
 })
 }

滑動省市區(qū)事件

bindChange: function(e) {
 var that = this;
 var val = e.detail.value
 var t = this.data.values;
 // 滑動省
 if (val[0] != t[0]) {
  const citys = [];
  const countys = [];
  // 保存市
  for (let i = 0; i < cityData[val[0]].sub.length; i++) {
  citys.push(cityData[val[0]].sub[i])
  }
  // 保存第一個市的全部區(qū)
  for (let i = 0; i < cityData[val[0]].sub[0].sub.length; i++) {
  countys.push(cityData[val[0]].sub[0].sub[i])
  }
  // 保存
  this.setData({
  province: cityData[val[0]].name,
  city: cityData[val[0]].sub[0].name,
  citys: citys,
  countys: countys,
  values: val,
  value: [val[0], 0, 0],
  fdeliveryProvince: this.data.provinces[val[0]].code,
  fdeliveryCity: cityData[val[0]].sub[0].code,
  })
  // 防止只有省市的情況
  if (cityData[val[0]].sub[0].sub.length!=0){
  that.setData({
   county: cityData[val[0]].sub[0].sub[0].name,
   fdeliveryArea: cityData[val[0]].sub[0].sub[0].code
  })
  }else {
  that.setData({
   county: '',
   fdeliveryArea:''
  })
  }
  return;
 }
 // 滑動市
 if (val[1] != t[1]) {
  const countys = [];
  // 保存市
  for (let i = 0; i < cityData[val[0]].sub[val[1]].sub.length; i++) {
  countys.push(cityData[val[0]].sub[val[1]].sub[i])
  }
  // 保存
  this.setData({
  city: this.data.citys[val[1]].name,
  countys: countys,
  values: val,
  value: [val[0], val[1], 0],
  fdeliveryCity: this.data.citys[val[1]].code,
  })
  // 防止只有省市的情況
  if (countys.length != 0) {
  that.setData({
   county: cityData[val[0]].sub[val[1]].sub[0].name,
   fdeliveryArea: cityData[val[0]].sub[val[1]].sub[0].code
  })
  } else {
  that.setData({
   county: '',
   fdeliveryArea: ''
  })
  }
  return;
 }
 // 滑動區(qū)
 if (val[2] != t[2]) {
  this.setData({
  county: this.data.countys[val[2]].name,
  values: val,
  fdeliveryArea: this.data.countys[val[2]].code
  })
  return;
 }
 }

html

<view class="citypicker" wx:if="{{condition}}">
 <view class="cityheader">
 <view bindtap="open" class="city-cancel">取消</view>
 <view bindtap="open" class="city-true">確定</view>
 </view>
 <picker-view indicator-style="height: 40px;" style="font-size:30rpx; width: 100%; height: 290px;" value="{{value}}" bindchange="bindChange" class="citybody">
 <picker-view-column>
  <view wx:for="{{provinces}}" wx:key="{{item.name}}" wx:code="{{item.code}}" style="line-height: 40px;padding-left:10px;">{{item.name}}</view>
 </picker-view-column>
 <picker-view-column>
  <view wx:for="{{citys}}" wx:key="{{item.name}}" wx:code="{{item.code}}" style="line-height: 40px;padding-left:10px;">{{item.name}}</view>
 </picker-view-column>
 <picker-view-column>
  <view wx:for="{{countys}}" wx:key="{{item.name}}" wx:code="{{item.code}}" style="line-height: 40px;padding-left:10px;">{{item.name}}</view>
 </picker-view-column>
 </picker-view>
</view>

效果圖

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • js實(shí)現(xiàn)簡易ATM功能

    js實(shí)現(xiàn)簡易ATM功能

    這篇文章主要為大家詳細(xì)介紹了js實(shí)現(xiàn)簡易ATM功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-10-10
  • JavaScript實(shí)現(xiàn)滑塊驗(yàn)證碼

    JavaScript實(shí)現(xiàn)滑塊驗(yàn)證碼

    這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)滑塊驗(yàn)證碼,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • javascript 面向?qū)ο蠓庋b與繼承

    javascript 面向?qū)ο蠓庋b與繼承

    本文是對自己這么長時間以來學(xué)習(xí)javascript面向?qū)ο蟮目偨Y(jié),這里針對封裝和繼承結(jié)合實(shí)例進(jìn)行了詳細(xì)分析,給有相同需求的小伙伴們參考下吧。
    2014-11-11
  • js實(shí)現(xiàn)百度登錄框鼠標(biāo)拖拽效果

    js實(shí)現(xiàn)百度登錄框鼠標(biāo)拖拽效果

    這篇文章主要為大家詳細(xì)介紹了js實(shí)現(xiàn)百度登錄框鼠標(biāo)拖拽效果的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • 徹底解決 webpack 打包文件體積過大問題

    徹底解決 webpack 打包文件體積過大問題

    本篇文章主要介紹了徹底解決 webpack 打包文件體積過大問題,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • 如何在微信小程序中使用骨架屏的步驟

    如何在微信小程序中使用骨架屏的步驟

    這篇文章主要介紹了如何在微信小程序中使用骨架屏的步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • JavaScript canvas實(shí)現(xiàn)圍繞旋轉(zhuǎn)動畫

    JavaScript canvas實(shí)現(xiàn)圍繞旋轉(zhuǎn)動畫

    這篇文章主要為大家詳細(xì)介紹了JavaScript canvas實(shí)現(xiàn)圍繞旋轉(zhuǎn)動畫,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • 微信小程序開發(fā)之獲取用戶手機(jī)號碼(php接口解密)

    微信小程序開發(fā)之獲取用戶手機(jī)號碼(php接口解密)

    這篇文章主要介紹了微信小程序開發(fā)之獲取用戶手機(jī)號碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • uniapp-路由uni-simple-router安裝配置教程

    uniapp-路由uni-simple-router安裝配置教程

    專為uniapp打造的路由器,和uniapp深度集成,uniapp用到了很多vue的api,但在路由管理的功能相對于vue-router還是比較欠缺的,比如全局導(dǎo)航守衛(wèi),本文給大家講解uniapp-路由uni-simple-router相關(guān)知識,感興趣的朋友跟隨小編一起看看吧
    2022-11-11
  • JS打字效果的動態(tài)菜單代碼分享

    JS打字效果的動態(tài)菜單代碼分享

    這篇文章主要介紹了JS打字效果的動態(tài)菜單,推薦給大家,有需要的小伙伴可以參考下。
    2015-08-08

最新評論

黄石市| 唐海县| 读书| 盘锦市| 政和县| 金华市| 博乐市| 会东县| 长乐市| 白河县| 蒙阴县| 紫金县| 兰坪| 晋江市| 富阳市| 承德县| 高雄市| 博客| 内黄县| 德江县| 兴业县| 筠连县| 察哈| 和顺县| 宁都县| 陵川县| 韶关市| 涪陵区| 麻江县| 武川县| 长兴县| 新民市| 腾冲县| 南丹县| 内乡县| 阿克苏市| 达拉特旗| 卢湾区| 西乌| 岢岚县| 嘉义市|