vue+elementui 复合型输入框使用详解

<div style="margin-top: 15px;">
  <el-input placeholder="请输入内容" v-model="input3" class="input-with-select">
    <el-select v-model="select" slot="prepend" placeholder="请选择"                     
         @change=‘changeSelect’>

      <el-option label="餐厅名" value="1"></el-option>
      <el-option label="订单号" value="2"></el-option>
      <el-option label="用户电话" value="3"></el-option>
    </el-select>
    <el-button slot="append" icon="el-icon-search"></el-button>
  </el-input>
</div>

使用elementui的复合型输入框,结合自己项目需要,选的是第三种

首先要注意的一点是,如果不给select加宽度,会显示不出来

<style>
  .el-select .el-input {
    width: 130px;
  }
  .input-with-select .el-input-group__prepend {
    background-color: #fff;
  }
</style>

其次是要给后端传值,传搜索框的值  这时候就要用到this.$set(obj,key,val)

正好是单选,所以给后台传值的话,也是要动态绑定对象内的属性值

刚好this.$set,就可以给对象动态的进行绑定

<script>
export default {
  data() {
    return {
     
      input3: '',
      select: '',
      listMaterial:{}
    }
  },
methods:{
    changeSelect(event){

       this.$set(this.listMaterial,event,this.input3)
//这个this.$set 是重点 event是切换的属性,input3是输入框的值
    },
}
}
</script>

多选的还有待研究,欢迎讨论。。。。

 

 

  • 8
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值