4-7-vue框架-第三方ui组件elementui-el-select组件change事件获取label的值

发布时间 2023-07-20 18:55:18作者: 技术改变命运Andy

Element的el-select组件change事件获取label的值

在如下el-select组件的代码中,要想在change事件时获取label的值。

<el-select
  v-model="ruleForm.usualReviews"
  :readonly="true"
  class="oms-select"
  placeholder="请选择常用意见"
  @change="selectChanged"
>
  <el-option v-for="item in list"
    :key="item"
    :value="item.opinionId"
    :label="item.content"
  ></el-option>
</el-select>

方法1:修改:value的值

我们可以修改:value的值为"{value:item.opinionId,label:item.content}"。

<el-select
  v-model="ruleForm.usualReviews"
  :readonly="true"
  class="oms-select"
  placeholder="请选择常用意见"
  @change="selectChanged"
>
  <el-option v-for="item in list"
    :key="item"
    :value="{value:item.opinionId,label:item.content}"
    :label="item.content"
  ></el-option>
</el-select>

再选择下拉框,触发selectChanged函数,则可以获取到label的值。

selectChanged(params){
  const { value, label } = params
  this.ruleForm.processReview = label
}

方法2:遍历

Element UI - el-select 同时获取 value 和 label 的值

<el-form-item v-if="isMD" label="业务员名称">
  <el-select v-model="addBM.storeManagerName" @change="selectGet" filterable style="display:block;" placeholder="请选择门店业务员名称">
    <el-option
      v-for="item in userList"
      :key="item.id"
      :label="item.name"
      :value="item.id">
    </el-option>
  </el-select>
</el-form-item>
// 下拉框选中事件
selectGet(vId){ // 这个vId也就是value值
  console.log(ha);
  let obj = {};
  obj = this.userList.find((item)=>{ // 这里的userList就是上面遍历的数据源
      return item.id === vId; // 筛选出匹配数据
  });
  console.log(obj.id);
  console.log(obj.name); // 这边的name就是对应label
}