el-autocomplete 下拉选线添加一个固定按钮

文章展示了如何在Vue.js中使用<el-autocomplete>组件来创建一个自动补全搜索框,包括类名绑定、事件监听(如@blur、@select、@focus)以及自定义模板和数据处理方法querySearch,该方法处理模糊匹配并添加了添加新项的功能。
摘要由CSDN通过智能技术生成
<el-autocomplete
   class="voucher-subject-input"
   :ref="'inputcredit_2_'+index"
   :popper-append-to-body="true"
   popper-class="acc-search"
   :class="{ 'subject-opacity': voucher.items[index].showText }"
   v-model="voucher.items[index].subjectName"
   value-key="name"
   :fetch-suggestions="querySearch"
   :highlight-first-item="true"
   @blur="handleSelectBlur(voucher.items[index],index)"
   @select="handleSelectSubject($event,index)"
   @focus="handleFocusSubject($event,index)"
   >
  <template slot-scope="{ item }">
     <el-button
       v-if="item.is_add"
       type="primary" plain
       style="width: 100%;position: absolute;bottom: 0px;left: 0px;"
       class="add-button"
       @click="accAddBtn()"
       >
       添加
    </el-button>
 </template>
</el-autocomplete>
<style>
    /* 修改远程搜索框内容自适应 */
    .acc-search .el-scrollbar__wrap{
      padding-bottom: 40px;
    }
</style>
querySearch(queryStr, cb) {
                let t = this;
                queryStr = queryStr ? queryStr.trim() : "";
                let subjectList = t.subjectList;
                let rows = [];
                subjectList.forEach(item=>{
                    let asubName = item.asubName;
                    let asubCode = item.asubCode;
                    if (
                        asubName.indexOf(queryStr) != -1 ||
                        asubCode.indexOf(queryStr) != -1
                    ) {
                        item.value = asubCode + '   ' + asubName;
                        rows.push(item);
                    }
                });
                rows.push({is_add: true, value: '' });
                cb(rows);
            },

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值