elementUI表格单击行时选中该行checkbox

Posted on   猫头唔食鱼  阅读(3433)  评论(0编辑  收藏  举报

1.table上加上  @row-click="handleClickTableRow"

2.单选框的checkbox那列加上  @selection-change="handleSelectionChange"

3.table加上ref

4.实现1,2的方法

复制代码
 methods: {
    handleClickTableRow(row, event, column) {
      console.log(row);
      console.log(column);
      this.$refs.fileTable.toggleRowSelection(row);
    },
       handleSelectionChange(rows) {
      console.log(rows);
      this.multipleSelection = rows;
    },
    
  },
复制代码

结果:

 

 

 

完整代码:

复制代码
<template>
<div>
  <el-table
  ref="fileTable"
   @row-click="handleClickTableRow"
     :data="tableData"
    style="width: 100%">
    <el-table-column  @selection-change="handleSelectionChange" type="selection" width="55"></el-table-column>
    <el-table-column
      label="日期"
      width="180">
      <template slot-scope="scope">
        <i class="el-icon-time"></i>
        <span style="margin-left: 10px">{{ scope.row.date }}</span>
      </template>
    </el-table-column>
    <el-table-column
      label="姓名"
      width="180">
      <template slot-scope="scope">
        <el-popover trigger="hover" placement="top">
          <p>姓名: {{ scope.row.name }}</p>
          <p>住址: {{ scope.row.address }}</p>
          <div slot="reference" class="name-wrapper">
            <el-tag size="medium">{{ scope.row.name }}</el-tag>
          </div>
        </el-popover>
      </template>
    </el-table-column>
    
  </el-table>
</div>
</template>
<script>
export default {
  name: "HelloWorld",
  data () {
    return {
       multipleSelection: [], // 表格被选中的内容
       tableData: [{
          date: '2016-05-02',
          name: '王小虎',
          address: '上海市普陀区金沙江路 1518 弄'
        }, {
          date: '2016-05-04',
          name: '王小虎',
          address: '上海市普陀区金沙江路 1517 弄'
        }, {
          date: '2016-05-01',
          name: '王小虎',
          address: '上海市普陀区金沙江路 1519 弄'
        }, {
          date: '2016-05-03',
          name: '王小虎',
          address: '上海市普陀区金沙江路 1516 弄'
        }]
    };
  },
  methods: {
    handleClickTableRow(row, event, column) {
      console.log(row);
      console.log(column);
      this.$refs.fileTable.toggleRowSelection(row);
    },
       handleSelectionChange(rows) {
      console.log(rows);
      this.multipleSelection = rows;
    },
    
  },
}
</script>
<style lang="css" scoped>
</style>
复制代码

 

编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
历史上的今天:
2019-04-01 地址栏的路由输入不匹配时候,设置默认跳转页面(redirect)
2019-04-01 把router-link标签渲染成指定的标签
点击右上角即可分享
微信分享提示