1、在vue的data区声明当前行变量对象,如果当前行的信息用于了按钮的状态则需要赋予默认值,否则会报找不到属性的错误,比如下面会用到当前记录的status属性值控制按钮是否可用。

//表格选中的行
data() {
return {
currentRow:{status:'0'},
}
}

2、在methods方法列表中声明表格活动行变更的方法,并绑定表格的current-change事件

//当前行变更时
handleCurrentChange: function(val){
this.currentRow = val !== null ? val:{status:'0'};
}, //绑定事件
<el-table ref="myTable" @current-change="handleCurrentChange">

3、表格查询刷新数据的事件中对当前行进行变量赋值

searchData: function() {
//获取数据前赋默认值
this.currentRow = {status:'0'};
drugs.apiGetAllData(queryParam)
.then(response => {
// 一些逻辑代码
this.listData = response.data.list;
//赋值当前行变量,并让表格默认选中第一条数据
if (this.listData.length > 0 ) {
this.$refs.myTable.setCurrentRow(this.listData[0]);
this.currentRow = this.listData[0];
}
})
.catch(error => {
this.$message.error('查询失败!失败原因:' + error.response.data.message);
});
},

4、声明一个是否有当前活动行的判断函数,在表格行操作按钮点击的时候,进行判断并执行响应的业务逻辑

//当前选择行是否为空
isEmptyRow: function(){
if (this.currentRow == null || this.currentRow.id == null){
this.$message.warning('请先选中要操作的记录行!');
return true;
}
}, //按钮事件
<sun-button type="primary" @click="rowEdit" hint="修改记录">编辑</sun-button> //编辑操作业务代码
rowEdit: function (){
//判断当前行信息
if (this.isEmptyRow()){
return;
}
//做一些逻辑处理
}).catch(err => {
this.$message.error('编辑失败!<br>' + err.response.data.message);
})
},

el-table当前行的获取和设置,用于表格行操作的更多相关文章

  1. Jqeury获取table当前行与指定列

    今天遇到了一个Jqeury获取table当前行与指定列的问题: 大概的实现要求是一个页面中,上面有几个input输入框,下面有一个table,当在输入框中输入内容的时候,点击添加按钮的时候,在下面ta ...

  2. jquery 获取和设置 checkbox radio 和 select option的值?

    ============== 获取和设置 checkbox radio 和 select的值? === val()函数, 其名字就表达了 它的意思: 他就是= value 的简写! val就是valu ...

  3. DataGridView中获取与设置当前选中行以及SelectedRows和CurrentRow注意区分

    场景 DataGridView怎样实现添加.删除.上移.下移一行: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10281414 ...

  4. termios, tcgetattr, tcsetattr, tcsendbreak, tcdrain, tcflush, tcflow, cfmakeraw, cfgetospeed, cfgetispeed, cfsetispeed, cfsetospeed - 获取和设置终端属性,行控制,获取和设置波特率

    SYNOPSIS 总览 #include <termios.h> #include <unistd.h> int tcgetattr(int fd, struct termio ...

  5. 【VC++技术杂谈002】打印技术之获取及设置系统默认打印机

    本文主要介绍如何获取以及设置系统的默认打印机. 1.获取系统中的所有打印机 获取系统中的所有打印机可以使用EnumPrinters()函数,该函数可以枚举全部的本地.网络打印机信息.其函数原型为: B ...

  6. 使用 antd Table组件, 异步获取数据

    使用React.js + Redux + antd 制作CMS 后台内容管理系统,分享一点点积累,欢迎讨论. 在this.state中初始化数据: this.state = { pageNum:1, ...

  7. 关于获取、设置css样式封装的函数入门版

    <html> <head> <meta charset="UTF-8"> <title>CSS样式的获取和设置:简单版</ti ...

  8. jquery获取和设置元素高度宽度

    jquery获取和设置元素高度宽度 1.height()/ width() 取得第一个匹配元素当前计算的高度/宽度值(px) height(val)/ width(val) 为每个匹配的元素设置CSS ...

  9. [WinAPI] API 14 [获取、设置文件属性和时间]

    >_< 为了获取文件属性,用户可以使用GetFileAttributes与GetFileAttributesEx函数. GetFileAttributesEx函数除了返回文件属性外,还返回 ...

  10. [WinAPI] API 12 [获取程序所在的目录、程序模块路径,获取和设置当前目录]

    Windows系统提供一组API实现对程序运行时相关目录的获取和设置.用户可以使用GetCurrentDirectory和SetCurrentDirectory获取程序的当前目录,获取模块的路径使用G ...

随机推荐

  1. Ext.Net & ASP.NET

    实际上己有很完善的asp.net.控件实现ExtJS的功能,使用开发人员不用过多了解EXtJS即可实现其一样的功能. 使用Asp.net web form /MVC方式均可.可以很快的上手开发,如果用 ...

  2. 23、表空间及段区块_1(段区块管理、pctfree、数据块结构、行迁移、高水位)

    oracle数据库的物理存储结构 1.spfile:参数文件 2.controlfile:控制文件 3.datafile:数据文件 4.redo log 5.arch:归档日志 oracle数据库的d ...

  3. Uncaught Error: Cannot find module 'strip-ansi'

    我的项目是typescript开发语言,原本我只写了".ts",导致上面运行yarn dev编译报错,页面报错.加上".js"后成功 报错原因:在webpack ...

  4. configuration file routines:DEF_LOAD_BIO:missing equal sign:conf_def.c:362

    报错: Auto configuration failed 139868431284128:error:0E079065:configuration file routines:DEF_LOAD_BI ...

  5. (Python基础教程之十六)Python multidict示例–将单个键映射到字典中的多个值

    1.什么是multidict词典> 在python中," multidict "一词用于指代字典,在字典中可以将单个键映射到多个值.例如 多重结构 multidictWith ...

  6. python之日志logging

    转载:https://blog.csdn.net/weixin_43790276/article/details/101944628 logging 模块是 Python 内置的标准模块,用于输出代码 ...

  7. Mac下常用软件汇总(精)

    1.连接Windows远程连接工具(Microsoft-Remote-Desktop-For-Mac ) 2.SSH管理工具:Royal TSX 下载地址:Royal Apps Royal TSX 是 ...

  8. vim之常用插件

    Vundle是vim的一个插件管理器, 同时它本身也是vim的一个插件.插件管理器用于方便.快速的安装.删除.Vim更新插件.vim Vundle插件官方地址:https://github.com/V ...

  9. 震惊!推荐一款AI驱动的自动化测试神器:TestCraft

    在当今快速迭代的软件开发环境中,自动化测试已经成为确保软件质量的重要一环.然而,传统的手动录制和编写测试脚本的方式不仅耗时耗力,还难以跟上敏捷开发的节奏. 本文将为大家介绍一款基于AI技术的自动化测试 ...

  10. tar 分卷压缩和解压缩

    示例将 jdk1.8.0_221 文件夹按 98m 进行分卷压缩和解压缩压缩: tar -czvf - jdk1.8.0_221/ |split -b 98m - jdk1.8.0_221.tar.g ...