相思资源网 Design By www.200059.com
本文实例为大家分享了微信小程序工作时间段选择的具体代码,供大家参考,具体内容如下
1. 效果图如上,需完成时间段的选择 以及下面的工作日选择 保存按钮为formSubmit提交后台
2.思路:
①时段用picker跟input 如果没有占位字符 则不需要input
②工作日选择用checkbox 多选的样式用label 将checkbox隐藏
③label的选择后的样式跟取消的样式,这里无需判断checked 当然也可以判断checked 我这里的方法是,先建一个放星期一到星期天的数组date,选择之后,在js里返回的detail.value里找到所选择的日期selectedList,再判断date是否在selectedList内存在(注意是date在list中是否存在)。如果存在则设对应的布尔为true,否则false。
下面为代码:
wxml
<!--pages/addtime/index.wxml--> <view class='main'> <view class='when'> <form bindsubmit='formSubmit'> <button formType='submit' id='save'>保存</button> <!-- 选择时间段 --> <view class="selectTime"> <text>时段:</text> <view class="section"> <picker mode="time" value="{{time}}" start="09:00" end="21:00" bindchange="bindTimeChange" id='startTime'> <!-- 在js中判断所选picker的id为startTime时,将value赋值给startTime,放在input内 --> <view class="picker"> <input placeholder='开始时间' value='{{startTime}}' name="startTime"></input> </view> </picker> </view> <text>至</text> <view class="section"> <picker mode="time" value="{{time}}" start="09:00" end="21:00" bindchange="bindTimeChange" id='endTime'> <!-- 在js中判断所选picker的id为endTime时,将value赋值给endTime,放在input内 --> <view class="picker"> <input placeholder='结束时间' value='{{endTime}}' name="endTime"></input> </view> </picker> </view> </view> <!-- 选择星期 --> <view class='selectDay'> <checkbox-group bindchange="checkboxChange" name="checkbox"> 重复: <!--写一个class选择后的背景色,在js中处理对应布尔值,在class中用三元式判断布尔并加背景色 --> <label class="checkbox {{selected.monday" for='monday'> 一 <checkbox value="monday" id='monday' hidden/> </label> <label class="checkbox {{selected.tuesday" for='tuesday'> 二 <checkbox value="tuesday" id='tuesday' hidden/> </label> <label class="checkbox {{selected.wednesday" for='wednesday'> 三 <checkbox value="wednesday" id='wednesday' hidden/> </label> <label class="checkbox {{selected.thursday" for='thursday'> 四 <checkbox value="thursday" id='thursday' hidden/> </label> <label class="checkbox {{selected.friday" for='friday'> 五 <checkbox value="friday" id='friday' hidden/> </label> <label class="checkbox {{selected.saturday" for='saturday'> 六 <checkbox value="saturday" id='saturday' hidden/> </label> <label class="checkbox {{selected.sunday" for='sunday'> 七 <checkbox value="sunday" id='sunday' hidden/> </label> </checkbox-group> </view> </form> </view> </view>
wx js
// pages/mine/index.js Page({ /** * 页面的初始数据 */ data: { startTime:null, endTime: null, selected: {"monday":false,"tuesday":false,"friday":false,"wednesday":false,"thursday":false,"sunday":false,"saturday":false}, // selected内放对应的用来判断class的布尔json }, bindTimeChange: function(e){ if (e.currentTarget.id=="startTime") { this.setData({startTime:e.detail.value}); }else if (e.currentTarget.id=="endTime") { this.setData({endTime:e.detail.value}); } }, checkboxChange: function(e){ var selectedList = e.detail.value; var date = ["monday","tuesday","friday","wednesday","thursday","sunday","saturday"];//包含所有日期的数组 var selected = this.data.selected;//先获取data中的值,好用来赋值 for (var i = 0; i < date.length; i++) { if (selectedList.indexOf(date[i])!=-1) { //判断所有的日期date在所选择的列表中是否存在,存在则给class selected[date[i]] = true; }else{ selected[date[i]] = false; } } this.setData({selected:selected}); }, formSubmit:function(e){ //提交后台 console.log(e); },
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
相思资源网 Design By www.200059.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
相思资源网 Design By www.200059.com
暂无微信小程序实现工作时间段选择的评论...
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。