打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
ElementUI框架 el-input和el-select组件失焦问题

el-input,el-select添加filterable属性后,如果都是打开一个弹窗页面,这两个组件的焦点事件并没有取消,就会出现如下问题(就是选择的下拉框会和弹窗同在一个z-index上,都是因为没有失焦引起的,Bug重现步骤:el-select添加filterable属性,选择值后,并打开弹窗,此时下拉款还没出现,当你在同浏览器切屏刷新任何一个页面时,再回来当前页面,这时下拉框会重新打开,出现了下图的Bug)


解决方案:

在组件上添加ref="select"方便获取组件,以及事件@visible-change="visibleChange"。1

添加方法:

//html:

 <el-form-item label="input输入框" prop="str1">
        <el-input
          type="text"
          v-model.trim="addForm.str1"
          placeholder="输入内容"
          style="width:100%;"
          clearable
          @focus="selectTable"
          ref="input"    //这里很重要
        ></el-input>
      </el-form-item>
      <el-form-item label="下拉选择框" prop="str1">
        <el-select
          v-model="addForm.str1"
          placeholder="请选择"
          filterable
          @change="selectTable"
          @visible-change="visibleChange"
          ref="select"  //这里很重要
          style="width:100%;"
        >
          <el-option
            v-for="item in accountTypelist"
            :key="item.id"
            :label="item.name"
            :value="item.id"
          ></el-option>
        </el-select>
      </el-form-item>

//script:
data(){
return{
   addForm: {
        str1: ""
      },
   accountTypelist: [
        { id: 0, name: "选项0" },
        { id: 1, name: "选项1" },
        { id: 2, name: "选项2" },
        { id: 3, name: "选项3" }
      ],
}
}

  methods: {
    selectTable() {
    //   this.$refs.input.blur();    input加上这句 (记得在组件加上ref属性)
      this.editDialog = true;
    },
    visibleChange(flag) {    //el-select加上这个(记得在组件加上ref属性)
      if (flag) {
        this.$refs.select.focus();
      } else {
        this.$refs.select.blur();
      }
    }
 }
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
循序渐进VUE+Element 前端应用开发(25)--- 各种界面组件的使用(1)
添加组件到ListBox中
成功element ui只能输入数字(含小数和不含小数)
jstl和EL 组合显示 select和radio标签
Vue纯前端实现Cookie登录记住账户功能
element多层导航菜单
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服