2021-10-12单选框点击可取消

这篇博客介绍了在Vue.js应用中如何管理单选框的选中状态。通过在后台返回的数据中添加一个`select`字段,并利用Vue的`$set`方法动态添加到每个对象上。当点击单选框时,通过`select`函数判断并切换选中状态。该方法涉及Vue的事件处理和数据绑定,确保了单选效果的正确实现。
摘要由CSDN通过智能技术生成

一般来说渲染后台返回的数据是不会带有判断是否选中的属性

所以第一步可以在获取接口数据的同时给每一个对象添加一个可判断是否选的字段select,这里我定义select为false时是选中

 res.rows.forEach((item) => {
            //动态向list中每个对象添加select属性 true则是未选中图片显示
            this.$set(item, "select", true);
          });

然后给每一个单选框添加click事件 同时传入当前的index

<div class="info-top">
              <img
                src="@/assets/orderManage/icon_duoxuan@2x.png"
                alt=""
                class="select-icon"
                @click.stop="select(index)"
                v-if="item.select"
              />
              <img
                src="@/assets/orderManage/icon_selectin@2x.png"
                alt=""
                class="select-icon"
                @click.stop="select(index)"
                v-else
              />  
 </div>

下面就是select 函数

select(index) {
      if (this.list[index].select) {
        //每次点击选中框先将所有按钮置空
        this.list.forEach((item) => {
          item.select = true;
        });
        this.list[index].select = false;
      }else if(!this.list[index].select) {
        this.list[index].select = true
      }
    },

整体思路就是,点击按钮时,先判断当前按钮状态(false为选中,true是为选中)接着如果是未选中状态,先将所有按钮的状态都设置为为选中,再将当前按钮状态设置为选中(select设置为false),如果当前按钮时选中状态,就将当前的按钮设置为为选中(select为true)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值