微信小程序时间选择插件使用详解


Posted in Javascript onDecember 28, 2018

微信小程序时间选择插件-弹出选择,供大家参考,具体内容如下

微信小程序时间选择插件使用详解

wxml

<modal class="modal" hidden="{{flag}}" no-cancel bindconfirm="getTime" confirmText="确定">
 <view class="modal-content">
<view class="time_screens" >
 <view style="text-align:center;color:#45BCE8">{{year}}-{{month}}-{{day}} {{hour}}:{{minute}}</view>
 <view style="border-top:1px solid #45BCE8;height:25px;font-size:14px;">
 <view class="time-title">年</view>
 <view class="time-title">月</view>
 <view class="time-title">日</view>
 <view class="time-title">时</view>
 <view class="time-title">分</view>
 </view>
 <picker-view indicator-style="height: 50px;" style="width: 100%; height: 300px;" value="{{value}}" bindchange="bindChange">
 <picker-view-column class="picker-text">
  <view wx:for="{{years}}" style="line-height: 50px">{{item}}</view>
 </picker-view-column>
 <picker-view-column class="picker-text">
  <view wx:for="{{months}}" style="line-height: 50px">{{item}}</view>
 </picker-view-column>
 <picker-view-column class="picker-text">
  <view wx:for="{{days}}" style="line-height: 50px">{{item}}</view>
 </picker-view-column>
  <picker-view-column class="picker-text">
  <view wx:for="{{hours}}" style="line-height: 50px">{{item}}</view>
 </picker-view-column>
  <picker-view-column class="picker-text">
  <view wx:for="{{minutes}}" style="line-height: 50px">{{item}}</view>
 </picker-view-column>
 </picker-view>
</view>
 </view>
</modal >

js:

const date = new Date()
const years = []
const months = []
const days = []
const hours = []
const minutes = []
var thisMon = date.getMonth();
var thisDay = date.getDate();
var thisHours = date.getHours();
var thisMinutes = date.getMinutes();
for (let i = 2017; i <= date.getFullYear() + 1; i++) {
 years.push(i)
}
 
for (let i = date.getMonth(); i <= 11; i++) {
 var k = i;
 if (0 <= i && i < 9) {
 k = "0" + (i + 1);
 } else {
 k = (i + 1);
 }
 months.push(k)
}
if (0 <= thisMon && thisMon < 9) {
 thisMon = "0" + (thisMon + 1);
} else {
 thisMon = (thisMon + 1);
}
if (0 <= thisDay && thisDay < 10) {
 thisDay = "0" + thisDay;
}
 
var totalDay = mGetDate(date.getFullYear(), thisMon);
for (let i = 1; i <= 31; i++) {
 var k = i;
 if (0 <= i && i < 10) {
 k = "0" + i
 }
 days.push(k)
}
 
for (let i = 0; i <= 23; i++) {
 var k = i;
 if (0 <= i && i < 10) {
 k = "0" + i
 }
 hours.push(k)
}
for (let i = 0; i <= 59; i++) {
 var k = i;
 if (0 <= i && i < 10) {
 k = "0" + i
 }
 minutes.push(k)
}
function mGetDate(year, month) {
 var d = new Date(year, month, 0);
 return d.getDate();
}
 
var app = getApp();
var api = app.globalData.api;
Page({
 
 /**
 * 页面的初始数据
 */
 data: {
 
 checkTime: date.getFullYear() + "-" + thisMon + "-" + thisDay + " " + thisHours + ":" + thisMinutes,
 //---时间控件参数
 flag: true,
 years: years,
 year: date.getFullYear(),
 months: months,
 month: thisMon,
 days: days,
 day: thisDay,
 value: [1, thisMon - 1, thisDay - 1, 0, 0],
 hours: hours,
 hour: thisHours,
 minutes: minutes,
 minute: thisMinutes,
 },
 
 showModel: function (e) {
 this.setData({ flag: false });
 },
 getTime: function (e) {
 var times = this.data.year + "-" + this.data.month + "-" + this.data.day + " " + this.data.hour + ":" + this.data.minute
 this.setData({
  flag: true,
  checkTime: times
 });
 },
 bindChange: function (e) {
 const val = e.detail.value
 this.setData({
  year: this.data.years[val[0]],
  month: this.data.months[val[1]],
  day: this.data.days[val[2]],
  hour: this.data.hours[val[3]],
  minute: this.data.minutes[val[4]],
 })
 var totalDay = mGetDate(this.data.year, this.data.month);
 var changeDate = [];
 for (let i = 1; i <= totalDay; i++) {
  var k = i;
  if (0 <= i && i < 10) {
  k = "0" + i
  }
  changeDate.push(k)
 }
 this.setData({
  days: changeDate
 })
 },
 
})

css:

.kouviewList{
 background-color: #F7F7F7;
}
.kouview{
 height:170px;
 margin-top:5px;
 
}
.kouviews{
 height:150px;
 margin-top:5px;
 
}
.time-title{
 float:left;width:20%;text-align:center;color:#45BCE8
}
.picker-text{
 text-align:center;
}

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

Javascript 相关文章推荐
Ajax一统天下之Dojo整合篇
Mar 24 Javascript
jQuery判断当前点击的是第几个li的代码
Sep 26 Javascript
jQuery+HTML5实现手机摇一摇换衣特效
Jun 05 Javascript
javascript中alert()与console.log()的区别
Aug 26 Javascript
Javascript技术栈中的四种依赖注入详解
Feb 23 Javascript
vue页面使用阿里oss上传功能的实例(二)
Aug 09 Javascript
浅谈React 服务器端渲染的使用
May 08 Javascript
跨域解决之JSONP和CORS的详细介绍
Nov 21 Javascript
使用element-ui的el-menu导航选中后刷新页面保持当前选中状态
Jul 19 Javascript
Vue中img的src是动态渲染时不显示的解决
Nov 14 Javascript
微信小程序利用button控制条件标签的变量问题
Mar 15 Javascript
react antd实现动态增减表单
Jun 03 Javascript
微信小程序当前时间时段选择器插件使用方法详解
Dec 28 #Javascript
Angular6新特性之Angular Material
Dec 28 #Javascript
关于微信公众号开发无法支付的问题解决
Dec 28 #Javascript
小程序实现抽奖动画
Apr 16 #Javascript
微信小程序实现文字从右向左无限滚动
Nov 18 #Javascript
angular4自定义组件非input元素实现ngModel双向数据绑定的方法
Dec 28 #Javascript
小程序文字跑马灯效果
Dec 28 #Javascript
You might like
Terran魔法科技
2020/03/14 星际争霸
简单实现限定phpmyadmin访问ip的方法
2013/03/05 PHP
CI框架中site_url()和base_url()的区别
2015/01/07 PHP
PHP实现的同步推荐操作API接口案例分析
2016/11/30 PHP
获取URL地址中的文件名和参数的javascript代码
2009/09/02 Javascript
web基于浏览器的本地存储方法应用
2012/11/27 Javascript
仿淘宝TAB切换搜索框搜索切换的相关内容
2014/09/21 Javascript
javascript闭包(Closure)用法实例简析
2015/11/30 Javascript
jQuery代码实现实时获取时间
2017/01/29 Javascript
Angular 4.x 路由快速入门学习
2017/05/03 Javascript
Angular2搜索和重置按钮过场动画
2017/05/24 Javascript
JS中使用textPath实现线条上的文字
2017/12/25 Javascript
JS设计模式之访问者模式定义与用法分析
2018/02/05 Javascript
JS获取当前时间的实例代码(昨天、今天、明天)
2018/11/13 Javascript
vue-router启用history模式下的开发及非根目录部署方法
2018/12/23 Javascript
nodejs微信开发之接入指南
2019/03/17 NodeJs
JavaScript设计模式---单例模式详解【四种基本形式】
2020/05/16 Javascript
Js跳出两级循环方法代码实例
2020/09/22 Javascript
[01:02:48]2018DOTA2亚洲邀请赛小组赛 A组加赛 Newbee vs Liquid
2018/04/03 DOTA
使用python解析xml成对应的html示例分享
2014/04/02 Python
Python实现比较两个文件夹中代码变化的方法
2015/07/10 Python
详解Python中的文件操作
2016/08/28 Python
python使用os.listdir和os.walk获得文件的路径的方法
2017/12/16 Python
如何在Python中实现goto语句的方法
2019/05/18 Python
python3格式化字符串 f-string的高级用法(推荐)
2020/03/04 Python
详解python metaclass(元类)
2020/08/13 Python
英国现代家具和装饰网站:PN Home
2018/08/16 全球购物
越南母婴用品购物网站:Kids Plaza
2020/04/09 全球购物
聚网科技C++面试笔试题
2015/09/01 面试题
中层干部岗位职责
2013/12/18 职场文书
运动会邀请函范文
2014/01/31 职场文书
总账会计岗位职责
2014/03/13 职场文书
2014年医院科室工作总结
2014/12/20 职场文书
Pytest实现setup和teardown的详细使用详解
2021/04/17 Python
Java比较两个对象中全部属性值是否相等的方法
2021/08/07 Java/Android
彻底卸载VMware虚拟机的超详细步骤记录
2022/07/15 Servers