如何使用.preventDefault()方法来阻止按钮点击事件
P粉254077747
2023-09-01 20:04:07
<p>给定这个教程 <a href="https://vuejs.org/guide/essentials/event-handling.html#accessing-event-argument-in-inline-handlers">https://vuejs.org/guide/essentials/event-handling.html#accessing-event-argument-in-inline-handlers</a></p>
<p>如下所示的代码中,我调用 <code>.preventDefault</code> 来期望取消 <code>click</code> 事件的正常行为。或者换句话说,我期望一旦调用了 <code>.preventDefault</code>,按钮将不再可点击,因为根据我的理解,<code>.preventDefault</code> 将禁用按钮的正常功能。</p>
<p>但是实际情况是,按钮仍然可点击,好像 <code>.preventDefault</code> 没有任何效果。</p>
<p>请告诉我如何正确使用 <code>.preventDefault</code> 来禁用按钮点击。</p>
<p><strong>代码</strong>:</p>
<pre class="brush:php;toolbar:false;"><template>
<div>
<button v-on:click="warn('msg',$event)">warn</button>
</div>
</template>
<script>
import {ref} from 'vue'
export default {
name: 'App',
components: {
HelloWorld
}
}
</script>
<script setup>
const warn = (msg,DOMEvent) => {
console.log("warn:",msg," event:",DOMEvent);
DOMEvent.preventDefault()
}
</script></pre></p>
preventDefault在以下情况下非常有用:
在您的情况下禁用按钮,您可以使用:
preventDefault()
不会禁用按钮,但会阻止其默认操作,主要在Submit
操作中会注意到。要在点击时禁用按钮,你需要像这样做: