vue中复选框全选与反选
html主要部分:
<template v-for="(item, index) in checkboxList"> <input type="checkbox" v-model="selectList" :value="item">
</template>
初始化selectList = [],checkboxList = ['苹果', '橡胶', '梨', '桃子']。
首先说全选事件,这个比较好弄。就是每次触发事件的时候先清空selectList,然后将checkboxList的值赋值给selectList就行了。
反选事件。所谓反选就是先判断如果有选中的则将其状态变为未选中,未选中则将其状态变为选中。
今天偶然发现一个很好用的方法,就是借鉴两个数组,判断是否有相同元素,然后去重这种思路来解决反选问题。
const _this = this
let checkboxList = _this.checkboxList let selectList = _this.selectList let tempArr1 = [] let tempArr2 = [] if (!_this.selectList.length) { _this.selectList = _this.checkboxList } else { for (let i = 0, len = selectList.length; i < len; i ++) { tempArr1[selectList[i]] = true //将数selectList中的元素值作为tempArr1中的键,值为true
} for(var j=0, lenj = checkboxList.length;j < lenj;j++){ if(!tempArr1[checkboxList[j]]){ tempArr2.push(checkboxList[j]); // 过滤checkboxList与selectList中相同的元素 } } _this.selectList = tempArr2 }
作者:江峰★
出处:http://www.cnblogs.com/jf-67/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利
分类:
javascript
, vue.js
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
2018-01-24 图片上传时获取图片的宽和高
2018-01-24 关于React Native的那些坑