vue el-table 复选框选中获取id值
时间: 2024-09-28 17:18:00 浏览: 67
Vue.js 的 `el-table` 组件中的复选框通常通过 `selection` 或 `row-selection` 属性来实现选择功能。当你需要获取选中的行ID时,可以使用 `@selection-change` 事件处理程序,该事件会在用户完成一次选择操作后触发,传递给函数的是一个 Selection 对象。
首先,在 Vue 模板上绑定一个变量来保存选中的数据,例如:
```html
<template>
<el-table :data="tableData" row-key="id" selection-mode="multiple">
<!-- ... 表格列 ... -->
<el-table-column type="selection" width="55"></el-table-column>
<!-- ... 其他列 ... -->
<el-table-column label="操作" width="100">
<template slot-scope="scope">
<el-checkbox @change="handleCheckboxChange(scope.$index, scope.row.id)"></el-checkbox>
</template>
</el-table-column>
</el-table>
</template>
```
然后,在你的组件脚本部分定义 `handleCheckboxChange` 函数,它接收当前行的索引和ID作为参数:
```javascript
export default {
data() {
return {
tableData: [], // 假设这是你的表格数据数组
selectedIds: [] // 存储选中的行ID
};
},
methods: {
handleCheckboxChange(index, id) {
if (this.selectedIds.includes(id)) {
this.selectedIds.splice(this.selectedIds.indexOf(id), 1);
} else {
this.selectedIds.push(id);
}
}
}
}
```
当用户点击复选框时,这个函数会更新 `selectedIds` 数组,你可以在这个列表中获取到所有的已选中行ID。如果需要实时获取当前状态下的ID,可以在模板内直接引用 `selectedIds`。
阅读全文