我在我的应用程序中使用Vue.js,并在表单内部有一个文本输入框。
<div id="myVueForm">
<form>
<input type="text" v-on="keyup:addCategory | key 'enter'">
<!-- more form fields -->
<button type="submit">Submit Form</button>
</form>
</div>
在我的Vue实例中,我有以下内容:
new Vue({
el: '#myVueForm',
methods: {
addCategory: function(e)
{
if(e) e.preventDefault();
console.log("Added a new category, thanks!");
}
}
});
尽管调用了preventDefault()
方法,当用户在文本输入框中按下回车键时,表单仍然会提交(虽然addCategory()
方法确实会被触发)。您可以在此 fiddle中演示此行为。
我知道我可以使用 jQuery 捕获事件并阻止提交,但我想看看是否可能在 Vue 中做到这一点,因为它似乎是一个常见的用法。