经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » JS/JS库/框架 » Vue.js » 查看文章
vue elementui表格获取某行数据(slot-scope和selection-change方法使用)
来源:jb51  时间:2023/1/18 8:42:08  对本文有异议

效果图:

1.当写后台管理页面时,使用element ui里的table表格时,表格中有操作按钮,获取当前行的数据时,我们可以使用 slot-scope="scope"来获取。

  1. <el-table-column label="操作" align="center" prop="auditStatus" width="180" fixed="right">
  2. <template slot-scope="scope">
  3. <el-button type="text" size="large" @click="audit(scope.row)">审核</el-button>
  4. </template>
  5. </el-table-column>
  1. audit(row){
  2. console.log(row)
  3. },

打印可得当前行数据,你就可以处理这些数据了

 2.但如果要实现的功能是在表头上了,例如图里的批量审核,那要怎么获取当前前勾选的这一行的数据呢?这时我们可以用表格中提供的@selection-change="handleSelectionChange" 的multipleSelection来实现。

  1. <template>
  2. <el-table
  3. ref="multipleTable"
  4. :data="tableData3"
  5. tooltip-effect="dark"
  6. style="width: 100%"
  7. @selection-change="handleSelectionChange">
  8. <el-table-column
  9. type="selection"
  10. width="55">
  11. </el-table-column>
  12. <el-table-column prop="title" label="作品名称" align="center" width="160">
  13. </el-table-column>
  14. <el-table-column prop="count" label="作品数量" align="center" min-width="160">
  15. </el-table-column>
  16. <el-table-column prop="price" label="作品价格" align="center" min-width="160">
  17. </el-table-column>
  18. </el-table>
  19. </template>
  1. data(){
  2. return {
  3. multipleSelection:[]
  4. }
  5. }
  6. //获取所有选择的项
  7. handleSelectionChange(val) {
  8. console.log(val)
  9. this.multipleSelection = val;
  10. },

打印可得当前行数据,你就可以处理这些数据了

例如: 

  1. <el-form-item>
  2. <el-button type="primary" @click="batchTransferTip()">批量审核</el-button>
  3. </el-form-item>
  1. //批量审核
  2. batchTransferTip() {
  3. if (this.multipleSelection.length == 0) {
  4. this.common.messageTip("请选择要审核的作品", "error");
  5. return false;
  6. } else {
  7. this.editboxName = "verify";
  8. let planIdList = [];
  9. //遍历数据
  10. for (let item of this.multipleSelection) {
  11. planIdList.push(item.id);
  12. }
  13. this.propData.id = planIdList;
  14. }
  15. },

注意:this.multipleSelection.length 为选择了多少项。

拿当前选中的行的数据,进行传值,实现批量审核功能。

ps:Vue element怎么获取table表格当前行数据和索引值

怎么拿表格当前行数据平时我们在使用表格时通过template的slot-scope="scope",使用scope.row拿到当前行的数据

  1. <el-table max-height="290" :data="userTableData" border style="width: 100%">
  2. <el-table-column label="名字">
  3. <template slot-scope="scope">
  4. {{scope.row.name}}
  5. </template>
  6. </el-table-column>
  7. <el-table-column label="年龄">
  8. <template slot-scope="{row}">
  9. {{row.age}}
  10. </template>
  11. </el-table-column>
  12. </el-table>

怎么拿表格当前行索引值

  1. <el-table max-height="290" :data="userTableData" border style="width: 100%">
  2. <el-table-column label="序号">
  3. <template slot-scope="scope">
  4. {{scope.$index+1}}
  5. </template>
  6. </el-table-column>
  7. </el-table>

到此这篇关于vue elementui表格获取某行数据(slot-scope和selection-change方法使用)的文章就介绍到这了,更多相关vue elementui表格获取某行数据内容请搜索w3xue以前的文章或继续浏览下面的相关文章希望大家以后多多支持w3xue!

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号