当前位置: 首页 > news >正文

vue3 获取选中的el-table行数据

在Vue 3中,如果你正在使用<el-table>组件(来自Element Plus或Element UI库),并希望获取被选中的行数据,你可以通过几种不同的方式来实现。以下是几种常见的方法:

方法1:使用@selection-change事件

<el-table>组件提供了一个@selection-change事件,该事件会在选中项发生变化时触发,你可以在这个事件的处理函数中获取当前的选中行数据。

首先,确保你的<el-table>组件的type属性设置为selection,这样就会显示复选框,允许用户选择行。

<template><el-table:data="tableData"@selection-change="handleSelectionChange"style="width: 100%"ref="multipleTable"><el-table-columntype="selection"width="55"></el-table-column><el-table-columnproperty="date"label="日期"width="120"></el-table-column><el-table-columnproperty="name"label="姓名"width="120"></el-table-column><!-- 其他列 --></el-table>
</template>
<script setup>
import { ref } from 'vue';const tableData = ref([/* 你的数据 */]);
const selectedRows = ref([]);const handleSelectionChange = (val) => {selectedRows.value = val; // val是当前选中行的数组
};
</script>

方法2:使用Table实例的selection属性

如果你需要通过编程方式访问或操作选中的行,你可以使用<el-table>组件的ref属性来引用该组件的实例,然后通过该实例的selection属性来获取选中的行数据

<template><el-table:data="tableData"ref="multipleTableRef"style="width: 100%"><el-table-columntype="selection"width="55"></el-table-column><!-- 列定义 --></el-table><el-button @click="getSelectionRows">获取选中行</el-button>
</template>
<script setup>
import { ref } from 'vue';
import { ElTable } from 'element-plus'; // 或 'element-ui' 取决于你使用的库版本和包名const tableData = ref([/* 你的数据 */]);
const multipleTableRef = ref(null); // 通过ref获取组件实例const getSelectionRows = () => {if (multipleTableRef.value) { // 检查ref是否已正确引用组件实例const selectedRows = multipleTableRef.value.selection; // 获取选中行数据数组console.log(selectedRows); // 处理或显示选中行数据}
};
</script>

在Element Plus中,直接通过selection属性访问选中行的功能已经被移除。你应该使用getSelectionRows方法(如方法1所示)来处理这一需求。如果你使用的是Element UI,那么上述方法2是可行的。但在Element Plus中,推荐使用方法1。

方法3:使用v-model:checked-rows.sync(已废弃)或v-model:checked-rows(Element Plus)

虽然在一些旧版本的Element UI中,你可以使用v-model:checked-rows.sync(或在Element Plus中为v-model:checked-rows)来直接绑定选中的行数据,但这种方法在Vue 3和Element Plus中已经被废弃或更改。推荐使用上述方法1来处理这个问题。

推荐使用方法1(通过@selection-change事件处理选中行数据),这是最通用且符合Vue 3和Element Plus最新实践的方法。如果你使用的是Element UI并且想要通过实例直接访问选中行,请确保你的项目依赖和代码示例匹配正确的库版本。对于Element Plus,请遵循最新的API和最佳实践。

http://www.xdnf.cn/news/1080703.html

相关文章:

  • 浅谈 webshell 构造之如何获取恶意函数
  • 「AI产业」| 《中国信通院华为:智能体技术和应用研究报告》
  • Response对象
  • Excel 如何处理更复杂的嵌套逻辑判断?
  • 网安系列【4】之OWASP与OWASP Top 10:Web安全入门指南
  • Flink Vitess CDC 环境配置与验证
  • QString 转 varchar
  • 【网络与系统安全】域类实施模型DTE
  • 数字资产革命中的信任之锚:RWA法律架构的隐形密码
  • ORACLE 日常查询
  • 浏览器(Chrome /Edge)高效使用 - 内部命令/快捷键/启动参数
  • vue3 el-table 行筛选 设置为单选
  • python打卡day57@浙大疏锦行
  • C#引用类型
  • 代码随想录算法训练营第四十六天|动态规划part13
  • WPF_Reactive_控件调试方法
  • PortSwigger Labs SQLInjection LAB6-7
  • Golang 运算符
  • 3D建模公司的能力与技术
  • 【Spring Boot】Druid 连接池 YAML 配置详解
  • 三、docker软件安装:gitlab,nexus,mysql8,redis,nacos,nginx
  • Apache RocketMQ进阶之路阅读笔记和疑问
  • 高职院校“赛岗课”一体化网络安全实战类人才培养方案
  • python -二叉树路径和为指定的值(根节点到叶子节点)
  • 译码器Multisim电路仿真汇总——硬件工程师笔记
  • 【机器学习深度学习】什么是下游任务模型?
  • 【STM32实践篇】:I2C驱动编写
  • 【模糊集合】示例
  • 【机器学习深度学习】AI 项目开发流程:从需求到部署的五大阶段
  • 机器学习安装使用教程