本文實例為大家分享了微信小程序工作時間段選擇的具體代碼,供大家參考,具體內容如下
創新互聯長期為近1000家客戶提供的網站建設服務,團隊從業經驗10年,關注不同地域、不同群體,并針對不同對象提供差異化的產品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯網生態環境。為普寧企業提供專業的成都網站建設、網站制作,普寧網站改版等技術服務。擁有十年豐富建站經驗和眾多成功案例,為您定制開發。
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?'selectedColor':''}}" for='monday'> 一 <checkbox value="monday" id='monday' hidden/> </label> <label class="checkbox {{selected.tuesday?'selectedColor':''}}" for='tuesday'> 二 <checkbox value="tuesday" id='tuesday' hidden/> </label> <label class="checkbox {{selected.wednesday?'selectedColor':''}}" for='wednesday'> 三 <checkbox value="wednesday" id='wednesday' hidden/> </label> <label class="checkbox {{selected.thursday?'selectedColor':''}}" for='thursday'> 四 <checkbox value="thursday" id='thursday' hidden/> </label> <label class="checkbox {{selected.friday?'selectedColor':''}}" for='friday'> 五 <checkbox value="friday" id='friday' hidden/> </label> <label class="checkbox {{selected.saturday?'selectedColor':''}}" for='saturday'> 六 <checkbox value="saturday" id='saturday' hidden/> </label> <label class="checkbox {{selected.sunday?'selectedColor':''}}" 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); },
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持創新互聯。
本文名稱:微信小程序實現工作時間段選擇
文章鏈接:http://vcdvsql.cn/article4/pegdoe.html
成都網站建設公司_創新互聯,為您提供網站設計公司、網站收錄、網站建設、做網站、軟件開發、域名注冊
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯