vue中@keyup.enter失效问题及解决

作者:皮蛋咸鱼白菜粥

这篇文章主要介绍了vue中@keyup.enter失效问题及解决,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

@keyup.enter失效问题

情况一(我遇到的情况)

@keyup.enter外部存在form表单,并且form表单里只有一个input

原因:当form表单内只有一个input按回车键会自动提交表单

解决办法:多增加一个不可见的input即可

情况二(百度时了解到的)

在同一个标签同时添加@click和@keyup.enter

解决办法:分开放,比如@keyup.enter通常放在input里面,@click放在button里面

@keyup.enter和@blur触发两次和回车无效

1.vue 对 input 绑定两个事件:回车或失焦

<input
   v-else
   ref="input"
   v-model="inputValue"
   type="text"
   :placeholder="placeholder"
   @keyup="save"
   @blur="save"
save(e) {
  console.log(e)   // 可以打印出事件的内容
  if (e.keyCode === 13 || e.type === 'blur') {
    this.pShow = !this.pShow
    this.$emit('update', this.$attrs['step-index'], this.inputValue)

要求 input 框失焦或者键盘按下 Enter 键时触发 save 事件,但是实际上在按下 Enter 键后,会触发两次save 事件

原因:键盘按下 Enter 键执行 save 方法同时会自动触发 blur事件,导致 save 被执行了两次

2.解决: 键盘按下 Enter 键执行 blur

<input
   v-else
   ref="input"
   v-model="inputValue"
   type="text"
   :placeholder="placeholder"
   @keyup.enter.native="$event.target.blur"
   @blur="save"

2.问题:按下 Enter 并不能触发事件

需要将 @keyup.enter.native="$event.target.blur" 改成 @keyup.enter="$event.target.blur" , 如果 input 是 el-input 可以用第一个方法

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
  • vue + qiankun 项目搭建过程
    vue + qiankun 项目搭建过程
    2023-03-03
  • vue中定时器setInterval的使用及说明
    vue中定时器setInterval的使用及说明
    2023-03-03
  • Vue手写防抖和节流函数代码详解
    Vue手写防抖和节流函数代码详解
    2023-02-02
  • Vue3中的setup语法糖、computed函数、watch函数详解
    Vue3中的setup语法糖、computed函数、watch函数详解
    2023-03-03
  • vue登录页面回车执行事件@keyup.enter.native问题
    vue登录页面回车执行事件@keyup.enter.native问题
    2023-03-03
  • vue在.js文件中引入store和router问题
    vue在.js文件中引入store和router问题
    2023-03-03
  • Vue中的@blur/@focus事件解读
    Vue中的@blur/@focus事件解读
    2023-03-03
  • vue3使用reactive包裹数组正确赋值问题
    vue3使用reactive包裹数组正确赋值问题
    2023-03-03
  • 美国设下计谋,用娘炮文化重塑日本,已影响至中国
    美国设下计谋,用娘炮文化重塑日本,已影响至中国
    2021-11-19
  • 时空伴随者是什么意思?时空伴随者介绍
    时空伴随者是什么意思?时空伴随者介绍
    2021-11-09
  • 工信部称网盘企业免费用户最低速率应满足基本下载需求,天翼云盘回应:坚决支持,始终
    工信部称网盘企业免费用户最低速率应满足基本下载需求,天翼云盘回应:坚决支持,始终
    2021-11-05
  • 2022年放假安排出炉:五一连休5天 2022年所有节日一览表
    2022年放假安排出炉:五一连休5天 2022年所有节日一览表
    2021-10-26
  • 电脑版 - 返回首页

    2006-2023 脚本之家 JB51.Net , All Rights Reserved.
    苏ICP备14036222号