首页 > 其他分享 >vue实现功能 单选 取消单选 全选 取消全选

vue实现功能 单选 取消单选 全选 取消全选

时间:2022-10-13 23:12:44浏览次数:48  
标签:status false 取消 allchecked item 全选 单选

vue实现功能 单选 取消单选 全选 取消全选

  • 代码部分
<template>
  <div class="">
    <h1>全选框</h1>
    <center>
      <button @click="checkAnti">反选</button>

      <table border="1px">
        <tr>
          <!-- 全选框 -->
          <td>
            <input type="checkbox" @click="checkall" v-model="allchecked" />
          </td>
          <td>姓名</td>
          <td>年龄</td>
        </tr>
        <tr v-for="(item, index) in listData" :key="index">
          <td>
            <input
              type="checkbox"
              v-model="item.status"
              @change="redio()"
            />
          </td>
          <td>{{ item.name }}</td>
          <td>{{ item.age }}</td>
        </tr>
      </table>
    </center>
  </div>
</template>

<script>
export default {
  data() {
    return {
      allchecked: false, //全选 默认为false
      //数据
      listData: [
        //数据
        {
          name: "张三",
          age: 18,
          status: false,
        },
        {
          name: "李四",
          age: 18,
          status: true,
        },
        {
          name: "王五",
          age: 18,
          status: false,
        },
        {
          name: "赵六",
          age: 18,
          status: true,
        },
      ],
      status: [],
    };
  },
  components: {},
  created() {},
  mounted() {},
  methods: {
    //单选框方法
    redio() {
      /* 
      findIndex() 方法返回的是传入的一个需求条件(函数)符合条件的数组的第一个元素位置;
      本题思路: 
            遍历数据集合中的每一个status属性 是否为false(如果有一个false则说明没有全部选中全选不需要为true)
            当不符合条件 即: 遍历集合中的属性没有false的属性 则全选框需要被点亮
      */
      if (this.listData.findIndex( target => target.status === false) == -1) {
        // console.log("验证通过");
        this.allchecked=true
      } else {
        // console.log("验证不通过");
        this.allchecked=false
      }
    },
    //反选
    checkAnti() {
      this.listData.forEach((item) => {
        item.status = !item.status;
      });
    },
    //全选 取消全选
    checkall() {
      this.allchecked = !this.allchecked;
      this.listData.forEach((item) => {
        item.status = this.allchecked;
      });
    },
  },
};
</script>

<style  scoped>
</style>

vue全选、单选.gif

标签:status,false,取消,allchecked,item,全选,单选
From: https://www.cnblogs.com/wanshen/p/16790053.html

相关文章

  • axios怎么取消请求
    我们都清楚在XMLHttpRequest对象中可以通过letxhr=newXMLHttpRequest();xhr.open('GETorPOST',url);xhr.send();//取消请求使用xhr.abort()在axios客户......
  • 利用computed计算属性实现全选功能
       1computed:{2isAll:{3get:function(){4//每一项都勾选了,全选选中,否则全选不选中5returnthis.list.every((item......
  • Vue组件上使用v-model之单选框
    子组件内容:<template><div><inputtype="radio":id="valueName":value="valueName":checked="picked===valueName":picked......
  • 取消xcode每次运行都提示输入用户名密码
     每次修改了代码都让输入,就很不方便,只需要以下简单操作即可。1、打开你的钥匙串  2、找到你项目的证书下的小钥匙  3、双击找到访问控......
  • Thread专题(6) - 取消和关闭
    此文被笔者收录在系列文章​​​架构师必备(系列)​​中,java中没有提供任何机制,来安全是强迫线程停止手头的工作,Thread.stop和Thread.suspend方法存在严重的缺陷,不能使用。......
  • Element UI-实现树形控件单选
    ElementUI-实现树形控件单选1.单选功能elementui中的树形可以设置checkbox,但是不能设置radio的单选功能但官方提供了自动勾选方法:想实现单选只需要给node增加点......
  • elementUI Tree 树形控件实现单选+获取树形控件单选框勾选内容
    elementUITree树形控件实现单选+获取树形控件单选框勾选内容  html部分<el-tree:data="data"show-checkbox......
  • jQuery-checkobx单选框设置选中和取消选中事件
    html代码<divclass="form-check"><inputclass="form-check-inputposition-static"type="checkbox"id="che"onclick="read()">我已阅读以上条款</div>jav......
  • MATLAB GUI设计——菜单选项中加入图标
    GUI中添加图标,能很大程度上提高用户的友好度,显得格外舒适。MATLAB官方并没有提供向菜单栏中添加图标的直接方法,基于figure设计的GUI中,可以通过JaveFrame属性间接设置图标......
  • Axios 取消重复请求
    在实际开发中,我们需要对用户发起的重复请求进行拦截处理,比如用户快速点击提交按钮解决办法1、新建request.jsimportaxiosfrom'axios'//创建axios实例constse......