js实现多选功能

11 篇文章 0 订阅
11 篇文章 0 订阅

html部分(与单选一样)

 <div class="cards" v-for="(e, index) in userList" :key="index">
     <div class="imges">
         <img src="./img/xzh.png" alt="" class="imgselect" v-if="e.isChecked" 
            @click="userClick1(e, index)" />
         <img src="./img/xz.png" alt="" class="imgselect" v-else @click="userClick1(e, 
            index)" />
         <span>{{e.name}}</span>
     </div>        
</div>

 js部分

this.userList.map((item) => {
    item.isChecked = false
})

this.userList = this.current > 1 ? [...this.userList, ...res.data.records] : 
res.data.records

  userClick1(row, i) {
      if (!this.userList[i].isChecked) {
        this.userList[i].isChecked = true // 确定
        this.namelist.push({ id: row.id, name: row.name }) // 赋值
      } else {
        this.userList[i].isChecked = false // 取消
        this.namelist.map((item, index) => {
          // 判断当前项是否取消
          if (item.id == row.id) {
            // 如果当前项取消了,就删掉当前项
            this.namelist.splice(index, 1)
          }
        })
      }
    },

效果图

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值