您好,登錄后才能下訂單哦!
本文實例為大家分享了微信小程序?qū)崿F(xiàn)復(fù)選框片展示的具體代碼,供大家參考,具體內(nèi)容如下
樣式部分你們自由發(fā)揮,反正這里是什么都沒寫的,選中和沒選中直接用這個this.data.arrStatus[checkIndex]去判斷就行了,之后你們都懂的。
效果預(yù)覽:
js部分
// page/index/index.js Page({ /** * 頁面的初始數(shù)據(jù) */ data: { items: [ { name: 'USA', value: '美國' }, { name: 'CHN', value: '中國' }, { name: 'BRA', value: '巴西' }, { name: 'JPN', value: '日本' }, { name: 'ENG', value: '英國' }, { name: 'TUR', value: '法國' }, ], arr: [], arrStatus: [] }, check: function (e) { //獲取當(dāng)前選中的值 var checkValue = e.currentTarget.dataset.val; //獲取當(dāng)前選中的下標(biāo) var checkIndex = e.currentTarget.dataset.index; //當(dāng)前選中的取反值 this.data.arrStatus[checkIndex] = !this.data.arrStatus[checkIndex]; if (this.data.arrStatus[checkIndex]) { //如果當(dāng)前為選中狀態(tài)則將值插入進數(shù)組中 this.data.arr.push(checkValue); }else{ //如果當(dāng)前為未選中狀態(tài)則將值從數(shù)組中刪除并返回一個新的數(shù)組 for (var i in this.data.arr) { if (this.data.arr[i] == checkValue) { this.data.arr.splice(i); } } } //打印當(dāng)前所選中的數(shù)據(jù) console.log(this.data.arr); }, /** * 生命周期函數(shù)--監(jiān)聽頁面加載 */ onLoad: function (options) { //設(shè)置數(shù)組中每一個數(shù)據(jù)的狀態(tài) for (var i in this.data.items) { this.data.arrStatus[i] = false; } }, })
wxml部分:
<block wx:for='{{ items }}'>
<text data-index='{{ index }}' data-val='{{ item.value }}' catchtap='check'>{{ item.value }}</text>
</block>
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持億速云。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。