如何防止keyup.enter和登录按钮onclick之间的重复函数调用?

问题描述 投票:0回答:1

在下面的表格中,当使用键盘将焦点移动到登录按钮并按下Enter时,执行两次process()函数。如何使表单在​​以下所有实例中只调用一次process()函数?

1)用户按下(使用键盘)进入提交按钮(无论对焦登录按钮)2)用户点击登录按钮(使用鼠标)

<form (keyup.enter)=process()>
    Email: <input name="email">
    Password: <input name="password">
    <button type="submit" (click)=process()>Login</button>
</form>

谢谢!

javascript angular forms
1个回答
0
投票

放置在你的process函数e.preventDefault()内,这将阻止事件的传播。

process(e) {
  e.preventDefault();
 /* YOUR LOGIC */
}

麻生太郎看看:e.stopPropagation()

© www.soinside.com 2019 - 2024. All rights reserved.