el-select下拉框多选远程搜索反显

 

<el-form-item label="**方:" prop="coSponsorIds">
          <el-select v-if="isShow" v-model="form.coSponsorIds" placeholder="请输入**方名称"
            :style="{width: '100%'}"
            multiple // 是否多选
            filterable//为el-select添加filterable属性即可启用搜索功能
            remote //是否为远程搜索
            reserve-keyword //多选且可搜索时,是否在选中一个选项后保留当前的搜索关键词
            :remote-method="getcoSponsorNamesList" // 远程搜索方法
            :loading="loading">
            <el-option v-for="(item, index) in coSponsorNamesList" :key="index" :label="item.deptName"
              :value="item.deptId" :disabled="item.disabled"></el-option>
          </el-select>
          <p style="margin: 0px;" v-else  v-for="(item, index) in seestopConference.coSponsorIds" :key="index">
            <span>{{item}}</span>
          </p>
          </el-form-item>
  

1 可以进行搜索

添加字段:filterable

 <el-form-item label="**方:" prop="coSponsorIds">
          <el-select
            v-model="coSponsorIds"
            placeholder="请输入**方名称"
            :style="{ width: '300px' }"
            filterable
          >
            <el-option
              v-for="(item, index) in coSponsorNamesList"
              :key="index"
              :label="item.deptName"
              :value="item.deptId"
              :disabled="item.disabled"
            ></el-option>
          </el-select>
        </el-form-item>

 

2  进行模糊查询

 测试代码

<template>
  <div>
    <div id="button">
      <el-form>
        <el-form-item label="**方:" prop="coSponsorIds">
          <el-select
            v-if="isShow"
            v-model="coSponsorIds"
            placeholder="请输入**方名称"
            :style="{ width: '300px' }"
            multiple
            filterable
            remote
            reserve-keyword
            :remote-method="getcoSponsorNamesList"
            :loading="loading"
          >
            <el-option
              v-for="(item, index) in coSponsorNamesList"
              :key="index"
              :label="item.deptName"
              :value="item.deptId"
              :disabled="item.disabled"
            ></el-option>
          </el-select>
          <p
            style="margin: 0px;"
            v-else
            v-for="(item, index) in seestopConference.coSponsorIds"
            :key="index"
          >
            <span>{{ item }}</span>
          </p>
        </el-form-item>
      </el-form>
    </div>
  </div>
</template>

<script>
export default {
  data () {
    return {
      isShow: true,
      loading: false,
      coSponsorIds: '',
      coSponsorNamesList: [
        {
          deptName: '11',
          deptId: 11,
          disabled: false
        },
        {
          deptName: '22',
          deptId: 22,
          disabled: false
        },
        {
          deptName: '33',
          deptId: 33,
          disabled: true
        }
      ],
      seestopConference: {
        coSponsorIds: '1'
      }
    }
  },
  methods: {
    async getcoSponsorNamesList (query) {
      if (query !== '') {
        this.remoteMethodLoading = true
        console.log('查询条件:' + query)
        // await this.getOrgList(
        //   {
        //     orgCode:
        //       process.env.NODE_ENV === 'development'
        //         ? '00000100'
        //         : this.userOrgCode,
        //     distCode: this.distCode,
        //     distLevel: this.distLevel,
        //   },
        //   query
        // );

        this.remoteMethodLoading = false
      } else {
        // this.orgList = this.allOrgList;
      }
    }
  }
}
</script>

<style scoped></style>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于Vue3和ElementUIel-select下拉框多选,你可以通过以下步骤来回显多选的数据: 1. 在data中定义一个数组selectedOptions,用于存储选择的多个选项的值。 2. 在el-select的v-model绑定selectedOptions数组,实现多选功能。 3. 设置el-select的multiple属性为true,启用多选模式。 4. 在el-option的v-model绑定selectedOptions数组,表示该选项是否被选中。 5. 在mounted生命周期函数中初始化selectedOptions数组,将需要回显的多选项的值添加到该数组中。 以下是示例代码: ```html <template> <el-select v-model="selectedOptions" multiple placeholder="请选择" style="width: 200px;"> <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value" :selected="selectedOptions.indexOf(item.value) > -1"> </el-option> </el-select> </template> <script> export default { data() { return { selectedOptions: [], // 存储选择的多个选项的值 options: [ // 下拉框选项 { value: 'option1', label: '选项一' }, { value: 'option2', label: '选项二' }, { value: 'option3', label: '选项三' }, { value: 'option4', label: '选项四' } ] }; }, mounted() { // 初始化selectedOptions数组,将需要回显的多选项的值添加到该数组中 this.selectedOptions = ['option1', 'option2']; } }; </script> ``` 在上述代码中,我们使用selectedOptions数组来存储选择的多个选项的值,然后在el-select的v-model中绑定该数组,实现多选功能。我们还设置了el-select的multiple属性为true,启用多选模式。在el-option中,我们使用v-model绑定selectedOptions数组,表示该选项是否被选中。在mounted生命周期函数中,我们初始化selectedOptions数组,将需要回显的多选项的值添加到该数组中。这样,下拉框就可以回显多选的数据了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值