uniapp的checkbox选中往数组添加 取消从数组删掉
时间: 2023-08-29 19:03:02 浏览: 203
在Uniapp中,我们可以通过以下方法实现checkbox选中往数组添加,取消从数组删除的功能。
首先,我们需要在数据中定义一个数组,用于存储选中的checkbox的值。例如,我们可以定义一个data中的属性selectedItems,其初始值为空数组。
然后,在checkbox的绑定事件中,我们可以通过判断checkbox的选中状态来执行不同的操作。当checkbox选中时,我们可以将其值添加到selectedItems数组中;当checkbox取消选中时,我们可以通过数组的indexOf方法找到该值在selectedItems中的索引,并使用splice方法将其从数组中删除。
具体实现如下:
```vue
<template>
<view>
<checkbox-group @change="checkboxChange">
<checkbox value="item1" />选项1
<checkbox value="item2" />选项2
<checkbox value="item3" />选项3
</checkbox-group>
</view>
</template>
<script>
export default {
data() {
return {
selectedItems: [] // 存储选中的checkbox的值的数组
};
},
methods: {
checkboxChange(event) {
const value = event.mp.detail.value; // 获取checkbox选中的值
// 判断当前checkbox是否已经选中
const index = this.selectedItems.indexOf(value);
if (index === -1) {
// 不存在于数组中,说明是新选中的checkbox
this.selectedItems.push(value); // 将其值添加到数组中
} else {
// 存在于数组中,说明是取消选中的checkbox
this.selectedItems.splice(index, 1); // 从数组中删除该值
}
}
}
};
</script>
```
通过以上代码,我们就可以实现当checkbox选中时往数组中添加其值,取消选中时从数组中删除其值的功能。注意,这里的实现方式只是一种方法,你可以根据具体的需求进行调整。
阅读全文