elementui select选择器获取选中拿到当前对象

46 篇文章 1 订阅
16 篇文章 1 订阅

有时候因为需求等情况,我们需要拿到select选择器选择的整个对象,不光只拿到他的value

当使用element ui 的select选择器选择一个选项时,使用@change事件时只能得到一个Id,想要得到Id对应的对象用到filter进行过滤取到才可以。

方式一

<el-select v-model="dataForm.varietyIds" multiple placeholder="请选择"         
  @change="changeVarietyIds">
   <el-option
     v-for="item in options"
     :key="item.id"
     :label="item.name"
     :value="item.id"
   />
 </el-select>
 
 changeVarietyIds(val) {
   this.$forceUpdate()
   let newList = []
   val.map(v => {
     const list = this.options.filter(item => {
       return item.id === v
     })
     let obj = list[0]
     newList.push(obj)
   })
 },

方式二

<el-select
  value-key="id"
  @change="searchSelect"
  v-model="addRuleform.diseaseCode"
  placeholder="请选择"
  clearable>

    <el-option
      v-for="item in options"
      key="item.id"
      :label="item.name"
      :value="item">
     </el-option>

</el-select>


//change方法
searchSelect(val){

  console.log("val",val)

},

这里的重点在于:
1.value-key绑定唯一标识,el-option的key值是不错的选择
2.@change方法不带参数
3.el-option的value绑定的是item对象

结果

 已经拿到了预期的值,后续操作就看需求。

 本文结束。

回显element-ui的select选择器的问题可能有几个原因。首先,确保你的options中的value的类型与data中定义的value的类型一致。如果它们的类型不匹配,回显可能会失败。其次,如果你的select框在点击后无法选中,可以尝试给select框添加一个@change事件,并在事件中执行this.$forceUpdate()函数,这样可以强制更新组件,使其能够正确获取并回显。\[2\]\[3\]另外,如果你的select框的option有但无法下拉展示出来,可能是因为你的select框的样式或者父元素的样式导致了显示问题,你可以检查一下相关的CSS样式是否正确设置。\[3\]如果以上方法都没有解决问题,可以提供更多的代码和具体的错误信息,以便更好地帮助你解决问题。 #### 引用[.reference_title] - *1* *3* [关于vue中elementUI的input和select无法回显的问题解决](https://blog.csdn.net/YANJIEAILISISI/article/details/124320907)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [关于element ui --Select 选择器回显问题](https://blog.csdn.net/qq_47908693/article/details/125699106)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值