双击编辑el-table的单元格数据

(1) el-table刷新要求绑定el-table的key要发生变化才会刷新

(2) 单元格双击事件 cell-dblclick

(3) 往row里面添加一个属性来唯一标识某一行的数据,双击时使这特殊属性为true,输入框失去焦点时则设置特殊属性为false,并且输入框的显示与隐藏通过v-if与特殊属性绑定。

(4) 回车事件 @keyup.enter.native

javascript 复制代码
<el-table border class="mt20" :data="data" style="width: 100%" row-key="id" :key="key" @cell-dblclick="dblclick">
      <el-table-column type="index" label="序号" width="50">
        <template slot-scope="scope">
          <span>{{ (search.page -1) * search.size + scope.$index+1 }}</span>
        </template>
      </el-table-column>
      <el-table-column prop="id" label="ID" width="width">
      </el-table-column>
      <el-table-column prop="name" label="名称" width="width">
      </el-table-column>
      <el-table-column prop="lwkx" label="论文扩写" width="width">
          <template scope="scope">
            <div v-if="scope.row[scope.column.property+'Show']" class="input-box">
              <el-input size="small" @keyup.enter.native="handleInputlwkx(scope.row,scope.column)" v-model="scope.row.lwkx"></el-input>
            </div>
            <span v-else>{{scope.row.lwkx}}</span>
          </template>
        </el-table-column>
    </el-table>

<script>
export default {
data() {
    return {
      key: "",
      dialogVisible: false,
      search: {
        page: 1,
        size: 20,
      },
      data: [],
      total: 0,
    };
  },
methods: {
    dblclick: function (row, column) {
      console.log(column.property);
      row[column.property + "Show"] = false;
      row[column.property + "Show"] = true;
      this.updateTable();
    },
    // 修改论文扩写
    handleInputlwkx(row, column) {
      row[column.property + "Show"] = true;
        //业务代码
      funcGroupUpdate(row).then((res) => {
        this.dialogVisible = false;
        this.$message.success(res.message);
      });
    },
 //更新表格
    updateTable() {
      this.key = Math.random();
    },
}
}
</script>

双击编辑el-table的单元格_el-table 单元格-CSDN博客

相关推荐
LucianaiB3 小时前
【元宝搜索开发者征文大赛】AI时代,学得慢就不用学?用元宝搜索打造一个教程保质期,确保每一个教程符合你的现状
前端·人工智能·ai编程
excel3 小时前
JavaScript 对象池:减少高频对象创建与 GC 压力
前端
陈随易5 小时前
纯 Go 写的 JS 引擎,跑分超过了 C 语言的 QuickJS
前端·后端·程序员
子兮曰7 小时前
Chrome 权限元素实战:144 与 151 的渐进增强写法
前端·javascript·chrome
IT_陈寒7 小时前
Redis连接池泄漏那次,我差点把生产环境搞崩了
前端·人工智能·后端
强尼银手7 小时前
我花一天做了个格斗游戏原型,判定全对,然后被「美术」劝退了
前端·javascript
石小石Orz7 小时前
AI 正在蚕食我们的编码能力
前端·后端·算法
陈随易8 小时前
专注飞机 FocusFlight,两个人把番茄钟做成了一趟航班
前端·后端·程序员
总要学点什么9 小时前
第98篇:三维特效-材质线效果——给一条线换十种材质,虚线的图案只填了一半
开发语言·前端·javascript·ecmascript·gis·webgl·材质
10share9 小时前
基于大模型的 i18n 方案:把中文原文当 Key,轻松搞定多语言维护
前端·vue.js