ElementUI中的el-select组件@change事件,@keyup.enter.native对enter事件失效

Mondo
  • 945

ElementUI中的el-select组件调用了@change事件后,@keyup.enter.native对enter事件失效

  <el-select
    v-model="value"
    size="mini"
    filterable
    placeholder="请选择"
    @change="handleChange"
    @keyup.enter.stop.native="handleEnter"
  >
    <el-option v-for="{ name, id } in options" :key="id" :label="name" :value="id"></el-option>
  </el-select>

不能对键盘的enter事件监听失效了,请问是什么原因呢?有什么好的解决方法吗?大神们~~

回复
阅读 4.9k
2 个回答
✓ 已被采纳

我看了下源码
图片描述

发现keydown被阻止了。
改了下可以了:

  <el-select
    v-model="value"
    size="mini"
    filterable
    placeholder="请选择"
    @change="handleChange"
    @keydown.enter.native="handleEnter"
  >
    <el-option v-for="{ name, id } in options" :key="id" :label="name" :value="id"></el-option>
  </el-select>

没有对keyup进行监听,改为了keydown可以监听了。

会车时会触发下拉收起。可监听visible-change事件来代替enter

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
你知道吗?

宣传栏