首页 > 解决方案 > v-onclick evt.target 获取 span 内的按钮;我应该怎么办?

问题描述

我有button一个span里面有一个设置为运行函数的v-on:click。我尝试通过value1将其button捕获为evt.

我遇到的问题是,如果我单击按钮的一侧,它会按预期运行。但是,如果我单击其中的跨度,我将无法拾取 value1,因为它evt.target是跨度。

我正在将现有项目转换为 Vue,这不是我所期望的行为。处理这个问题的最佳方法是什么?

谢谢!

<button id="touch-button" class="button float-center" value1="19" v-on:click="emit_values">
  <span>19</span>
</button>
emit_values(evt){
    $(evt.target).attr("value1")
}

标签: htmlvue.jsbuttonvue-component

解决方案


显然这是一个通用的 html/javascript 问题。

解决方案在这里:firefox 上 <button> 元素内的 <span> 缺少点击事件

我已将其更改为 target evt.currentTarger,然后使用 css 将pointer-events: none;样式添加到这些按钮的所有子级。


推荐阅读