如何阻止在Enter上提交表单组?

时间:2018-08-20 15:00:49

标签: angular angular-forms

我有一个方案,其父组件包含一个表单,而子组件具有其自己的独立表单-全部由模板驱动。为了解决围绕表单验证的一些问题,我consolidated the two forms into one form shared between the components。以前的“子表单”现在是FormGroup(使用ngModelGroup指令实现),其先前的(submit)已被按钮上的(click)处理程序替换该部分的内容,因此一切正常。

现在出现的问题是,在此Enter中按下FormGroup将会提交整个共享表单。是否有一种优雅的方法来阻止这些FormGroup输入在Enter上提交表单,而是在按钮的(click)处理程序中调用同一函数?手动向每个输入添加一个keypress事件是可行的,但这似乎没有必要。

1 个答案:

答案 0 :(得分:0)

您可以使用preventDefault()方法进行操作。将<div class="form-inline" id="Age"> <label for="age">Age</label> <input id="age" type="integer" name="age" onchange="validatedob()"> </div> <div class="form-inline" id="birth"> <label for="DOB">Date of Birth</label> <input id="dob" type="date" value="Unknown" name="date_of_birth" max="31-12-2030"> </div>键监听器注册到您的表单。

enter