ElementPlus Table表格实现可编辑单元格
作者:今晚哒老虎
本文主要介绍了ElementPlus Table表格实现可编辑单元格,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
通过基础的Table表格来实现单元格内容的可编辑
1.首先定位到需要编辑的列,替换el-table-column
<el-table-column label="Editable Column" width="300"> <template #default="{ row, column, $index }"> <el-input size="small" v-if=" tableRowEditId === row.id && tableColumnEditIndex === column.id " v-model="row.taskId" @blur="blurUnitInput(row, column)" @keyup.enter="blurUnitInput(row, column)" /> <span v-else class="hover-border">{{ row.taskId }}</span> </template> </el-table-column>
2.el-table 标签下面增加 cell-click 事件,当某个单元格被点击时会触发该事件
<el-table :data="tableData" border style="width: 100%" @cell-click="showUnitInput"> <el-table-column prop="date" label="Date" width="180" /> <el-table-column prop="name" label="Name" width="180" /> <el-table-column label="Editable Column" width="300"> <template #default="{ row, column, $index }"> <el-input size="small" v-if=" tableRowEditId === row.id && tableColumnEditIndex === column.id " v-model="row.taskId" @blur="blurUnitInput(row, column)" @keyup.enter="blurUnitInput(row, column)" /> <span v-else class="hover-border">{{ row.taskId }}</span> </template> </el-table-column> </el-table>
3. 增加标识变量、事件方法,可以在 blurUnitInput 方法里面实现修改的接口
const tableRowEditId = ref() const tableColumnEditIndex = ref() const showUnitInput = (row: any, column: any) => { // console.log('row', row) // console.log('column', column) //赋值给定义的变量 tableRowEditId.value = row.id //确定点击的单元格在哪行 如果数据中有ID可以用ID判断,没有可以使用其他值判断,只要能确定是哪一行即可 tableColumnEditIndex.value = column.id //确定点击的单元格在哪列 } const blurUnitInput = (row: { [x: string]: boolean }, column: any) => { tableRowEditId.value = null tableColumnEditIndex.value = null //在此处调接口传数据 console.log(row) console.log(column) }
4.增加一个样式,使可编辑的单元格鼠标悬停时显示虚线边框
.hover-border { border: none; /* 默认无边框 */ } .hover-border:hover { border: 1px dotted #165DFF; /* 鼠标悬停时显示虚线边框 */ padding: 2px; }
到此这篇关于ElementPlus Table表格实现可编辑单元格的文章就介绍到这了,更多相关ElementPlus Table可编辑单元格内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
您可能感兴趣的文章:
- Element UI/Plus中全局修改el-table默认样式的解决方案
- vue3 elementplus table合并写法
- Vue3中Element Plus Table(表格)点击获取对应id方式
- vue3+elementplus基于el-table-v2封装公用table组件详细代码
- vue3+element Plus实现在table中增加一条表单数据的示例代码
- vue3使用elementPlus进行table合并处理的示例详解
- vue3使用element-plus再次封装table组件的基本步骤
- Vue3+Element-Plus使用Table预览图片发生元素遮挡的解决方法
- element-plus的el-table自定义表头筛选查询功能实现
- vue3 element plus table selection展示数据,默认选中功能方式