实现el-table两列多选框且不可同时勾选

1、效果图如下,功能:必修和选修不可同时勾选

2、代码如下

bash 复制代码
<template>
      <el-table :data="addTableData" style="width: 100%">
        <el-table-column label="必修" width="55px" align="center">
          <template slot-scope="scope">
            <el-checkbox v-model="checked1" :label="scope.row.id" @change="checkboxChange($event,scope.row.id,'checked2')"><span></span></el-checkbox>
          </template>
        </el-table-column>
        <el-table-column label="选修" width="55px" align="center">
          <template slot-scope="scope">
            <el-checkbox v-model="checked2" :label="scope.row.id" @change="checkboxChange($event,scope.row.id,'checked1')"><span></span></el-checkbox>
          </template>
        </el-table-column>
        <el-table-column prop="id" label="编号" width="60px" align="center"></el-table-column>
        <el-table-column prop="name" label="名称" align="center"></el-table-column>
        <el-table-column prop="name" label="学时" width="60px"  align="center"></el-table-column>
      </el-table>
</template>


  export default {
    data() {
      return {
        checked1:[],//必修已选
        checked2:[],//选修已选
      }
    }

    methods: {
      checkboxChange(val,id,type) {
        if(val === true) {
          this[type] = this[type].filter(function(item) {
            return item !== id;  // 过滤出值不为2的元素
          });
        }
      },
    },
  }
相关推荐
ℋᙚᵐⁱᒻᵉ鲸落5 天前
ETypeError: nameRef.value?.focus is not a functio. 设置el-input自动聚焦时报错
前端·javascript·vue.js·elementui
愛芳芳8 天前
基于 Electron + Vue3 的仿 PC 微信客户端项目实战
前端·javascript·css·elementui·typescript·electron·vue
妖孽白小白14 天前
el-select的内容续写实现
前端·vue.js·elementui
鱼与宇20 天前
Element-plus离线访问(适用内网)
elementui·vue3
weixin_4225554221 天前
el-menu子菜单点击就被激活,恢复之前的激活状态
javascript·vue.js·elementui
yume_sibai21 天前
Element Plus 导航与反馈组件完全指南(15个核心组件)
前端·elementui·交互
雪芽蓝域zzs1 个月前
第十节:动态侧边栏菜单(根据路由 meta 自动渲染菜单)
javascript·vue.js·elementui
m0_579146651 个月前
Element UI 表格合并单元格完全指南:从原理到实战
前端·vue.js·elementui
常宇佳1 个月前
vue3 实战系列之踩过的一些坑
javascript·vue.js·elementui
aXin_ya1 个月前
ElementUI (01):Vue2 项目引入 ElementUI使用
elementui·vue