el-table表格行双击进行编辑

功能

双击单元格出现编辑框,编辑框失去焦点后保存内容。

原理
  1. 通过v-if控制编辑框与显示值显示和隐藏。
  2. 通过el-table 组件·的cell-dblclick事件,得到row、column的数据,并且显示编辑框,隐藏显示值。
  3. 通过el-input组件的blur隐藏编辑框。
步骤
1.显示编辑框,聚焦编辑框

显示编辑框

column.property是当前的templateel-table-column所填写的property

row[column.property + "isShow"] = true

 table数据改动时,给tablekey值一个随机数,刷新table

this.randomKey = Math.random()

编辑框聚焦

this.$nextTick是为了确保ref存在后执行下列代码

this.$nextTick(() => {
  this.$refs[column.property] && this.$refs[column.property].focus()
})
2.编辑框失去焦点,隐藏编辑框
row[column.property + "isShow"] = false
完整代码


转载地址:javascript - el-table 实现单元格内编辑功能 - 个人文章 - SegmentFault 思否

你可能感兴趣的:(vue.js,elementui,前端)