解决点击按钮后,按回车无限触发按钮事件

elementUi的按钮,点击一次后,他不会自行失去焦点,需要手动点击别的地方按钮才会失去焦点,所以就导致点击按钮过后,按回车,会触发按钮事件

在这里就是在点击按钮后,给按钮处理,使其失去焦点

这张效果图就是需要解决的问题
在这里插入图片描述

解决代码

<template>
  <div>
    <el-button @click="clickBtn">新增</el-button>
  </div>
</template>

<script>
export default {
    
    
  methods: {
    
    
    // 点击事件
    clickBtn (e) {
    
    
      let target = e.target
      // 根据button组件内容 里面包括一个span标签,如果设置icon,则还包括一个i标签,其他情况请自行观察。
      // 所以,在我们点击到button组件上的文字也就是span标签上时,直接执行e.target.blur()不会生效,所以要加一层判断。
      if (target.nodeName === 'SPAN' || target.nodeName === 'I') {
    
    
        target = e.target.parentNode
      }
     // 让其失去焦点
      target.blur()
    }
  }
}
</script>

猜你喜欢

转载自blog.csdn.net/JunVei/article/details/126752318