【vue笔记】el-table中嵌套的el-select 的取值问题

这篇博客记录了在Vue.js项目中使用Element UI的el-table组件时,如何处理表格内嵌el-select的取值问题。作者在实习期间遇到的问题是,每个表格行都有一个独立的select,并需要互不干扰地传值给后端。解决方案包括使用`slot-scope="scope"`来获取行数据,以及在select中同时绑定key和value,通过split方法传递多个值。此外,还讨论了label和value的绑定方式,强调value用于传给后端,而label作为显示的标签。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 前言

        最近开始在公司实习,想记录一下自己遇到的一些问题和解决办法,不一定完全正确,还在学习中……如果有错误,欢迎批评指正,谢谢。


  • 原型的要求是table中每一行都有一个select,且每一个select之间互不干扰

 vue代码如下:

细节

【使用slot-scope=“scope”】

element-ui的官方解释是:

 也就是说使用<template scope="scope">后,通过scope.row.键名,可以获取所在行的某一列的数据。

关于scope更多的理解,看到了一篇比较详细的文章,记录下链接:

 https://blog.youkuaiyun.com/tg928600774/article/details/81945140

【后端需要同时传值key和value】

一开始我想在@change中获取select的选项值,但是发现我还是没法直接改变传给后端的数据。

后来查到:value是可以传多值的。于是取了个巧,直接在:value中同时绑定了value和key的值,在给后端传参时,用.split(“|”)的方法分隔开value和key,这样就可以同时把两个值都取到了。

vue:

 js:

 

【再记录一下label和value的绑定】

 v-modal 绑定的值为当前被选中的el-option的 value 属性值 

value是选项的值(要传给后端的数据取值就修改这里:value)

label值既显示在select中的标签

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值