微信小程序?qū)崿F(xiàn)復(fù)選框效果
更新時間:2022年07月07日 10:43:39 作者:豆i漿
這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)復(fù)選框效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
本文實例為大家分享了微信小程序?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)則將值插入進(jìn)數(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í)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
JavaScript裝飾器函數(shù)(Decorator)實例詳解
這篇文章主要介紹了JavaScript裝飾器函數(shù)(Decorator),結(jié)合實例形式分析了JavaScript裝飾器函數(shù)(Decorator)的功能、實現(xiàn)與使用方法,需要的朋友可以參考下2017-03-03
JavaScript style對象與CurrentStyle對象案例詳解
這篇文章主要介紹了JavaScript style對象與CurrentStyle對象案例詳解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-08-08
使用純JS代碼判斷字符串中有多少漢字的實現(xiàn)方法(超簡單實用)
這篇文章主要給大家介紹了js判斷字符串中有多少漢字的實現(xiàn)方法然后給大家分享了使用JS判斷輸入字符串長度的兩種方法,非常不錯具有參考借鑒價值,感興趣的朋友一起看看吧2016-11-11

