微信小程序三级联动选择器使用方法

 更新时间:2018年02月01日 08:40:30   作者:Rattenking   我要评论
这篇文章主要为大家详细介绍了微信小程序三级联动选择器使用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了微信小程序三级联动选择器的具体代码,供大家参考,具体内容如下

效果图

实现原理

利用微信小程序的picker组件,其中:
1,普通选择器:mode = selector实现一级选择实例;
2,省市区选择器:mode = region实现省市区三级联动;
3, 多列选择器:mode = multiSelector实现二级和三级联动的10以内数字的乘法。

WXML

<view class="tui-picker-content">
 <view class="tui-picker-name">一级选择实例</view>
 <picker bindchange="changeCountry" value="{{countryIndex}}" range="{{countryList}}">
 <view class="tui-picker-detail">{{countryList[countryIndex]}}</view>
 </picker>
</view>

<view class="tui-picker-content">
 <view class="tui-picker-name">省市区三级联动选择</view>
 <picker bindchange="changeRegin" mode = "region" value="{{region}}">
 <view class="tui-picker-detail">{{region[0]}} - {{region[1]}} - {{region[2]}}</view>
 </picker>
</view>

<view class="tui-picker-content">
 <view class="tui-picker-name">自定义二级联动选择</view>
 <picker bindchange="changeMultiPicker" mode = "multiSelector" value="{{multiIndex}}" range="{{multiArray}}">
 <view class="tui-picker-detail">
 {{multiArray[0][multiIndex[0]]}} * {{multiArray[1][multiIndex[1]]}} = {{multiArray[0][multiIndex[0]] * multiArray[1][multiIndex[1]]}}
 </view>
 </picker>
</view>

<view class="tui-picker-content">
 <view class="tui-picker-name">自定义三级联动选择</view>
 <picker bindchange="changeMultiPicker3" mode = "multiSelector" value="{{multiIndex3}}" range="{{multiArray3}}">
 <view class="tui-picker-detail">
 {{multiArray3[0][multiIndex3[0]]}} * {{multiArray3[1][multiIndex3[1]]}} * {{multiArray3[2][multiIndex3[2]]}} = {{multiArray3[0][multiIndex3[0]] * multiArray3[1][multiIndex3[1]] * multiArray3[2][multiIndex3[2]]}}
 </view>
 </picker>
</view>

WXSS

page{background-color: #efeff4;}
.tui-picker-content{
 padding: 30rpx;
 text-align: center;
}
.tui-picker-name{
 height: 80rpx;
 line-height: 80rpx;
}
.tui-picker-detail{
 height: 80rpx;
 line-height: 80rpx;
 background-color: #fff;
 font-size: 35rpx;
 padding: 0 10px;
 overflow: hidden;
}

JS

Page({
 data: {
 // 普通选择器列表设置,及初始化
 countryList: ['中国','美国','英国','日本','韩国','巴西','德国'],
 countryIndex: 6,
 // 省市区三级联动初始化
 region: ["四川省", "广元市", "苍溪县"],
 // 多列选择器(二级联动)列表设置,及初始化
 multiArray: [[1, 2, 3, 4, 5, 6, 7, 8, 9], [1, 2, 3, 4, 5, 6, 7, 8, 9]],
 multiIndex: [3,5],
 // 多列选择器(三级联动)列表设置,及初始化
 multiArray3: [[1, 2, 3, 4, 5, 6, 7, 8, 9], [1, 2, 3, 4, 5, 6, 7, 8, 9], [1, 2, 3, 4, 5, 6, 7, 8, 9]],
 multiIndex3: [3, 5, 4]
 },
 // 选择国家函数
 changeCountry(e){
 this.setData({ countryIndex: e.detail.value});
 },
 // 选择省市区函数
 changeRegin(e){
 this.setData({ region: e.detail.value });
 },
 // 选择二级联动
 changeMultiPicker(e) {
 this.setData({multiIndex: e.detail.value})
 },
 // 选择三级联动
 changeMultiPicker3(e) {
 this.setData({ multiIndex3: e.detail.value })
 }
})

总结

1、由于微信小程序的picker组件只提供单独时间选择器和日期选择器,在实际开发中,我们可能需要同时选择日期和时间,组件不够全面,所以在做日期选择器时,需要注意;
2、解决日期和时间选择器结合的方法,利用多列选择器实现;
3、由于多列选择器的数据采用的是二维数组,所以不能直接实现联动效果,需要对数据判断处理。

合理的利用多列选择器,picker组件提供的其他四种选择器都能实现!

DEMO下载

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • javascript实现链接单选效果的方法

    javascript实现链接单选效果的方法

    这篇文章主要介绍了javascript实现链接单选效果的方法,可实现点击链接改变其背景色的功能,同时可禁用对应链接的跳转,需要的朋友可以参考下
    2015-05-05
  • 微信小程序实现日历功能

    微信小程序实现日历功能

    这篇文章主要为大家详细介绍了微信小程序实现日历功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-11-11
  • javascript中全局对象的parseInt()方法使用介绍

    javascript中全局对象的parseInt()方法使用介绍

    全局对象的parseInt()方法该如何使用,下面为大家详细介绍下,感兴趣的朋友不要错过
    2013-12-12
  • 小程序日历控件使用方法详解

    小程序日历控件使用方法详解

    这篇文章主要为大家详细介绍了小程序日历控件的使用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-12-12
  • 深入浅析JavaScript中对事件的三种监听方式

    深入浅析JavaScript中对事件的三种监听方式

    最近这段时间因为每天要修改网站,为网站做特效,所以看了很多的js接触事件,自己只会使用一小部分,有时用的时候也比较混乱,现在系统的整理了一下,本篇文章跟大家分享的是JavaScript中对事件的三种监听方式
    2015-09-09
  • 微信小程序中的canvas 文字断行和省略号显示功能的处理方法

    微信小程序中的canvas 文字断行和省略号显示功能的处理方法

    大家都知道在canvas中没有提供方法来处理文字的多行问题,只有通过截取指定字符串来达到目的。接下来通过本文给大家介绍微信小程序中的canvas 文字断行和省略号显示功能 ,需要的朋友可以参考下
    2018-11-11
  • 小程序实现带年月选取效果的日历

    小程序实现带年月选取效果的日历

    这篇文章主要为大家详细介绍了小程序实现带年月选取效果的日历,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-06-06
  • js 获取浏览器版本以此来调整CSS的样式

    js 获取浏览器版本以此来调整CSS的样式

    判断当前使用的是那个浏览器及浏览器的那个版本,根据浏览器版本来调整CSS的样式,下面是获取当前浏览器的代码,需要的朋友可以参考下
    2014-06-06
  • JS实现盒子拖拽效果

    JS实现盒子拖拽效果

    这篇文章主要为大家详细介绍了JS实现盒子拖拽效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-02-02
  • JS document内容及样式操作完整示例

    JS document内容及样式操作完整示例

    这篇文章主要介绍了JS document内容及样式操作,结合完整实例形式分析了JavaScript document内容及样式的获取、修改、添加等相关操作技巧,需要的朋友可以参考下
    2020-01-01

最新评论