2017-04-18 85 views
0

如果我有这样一种形式:角FormGroup.reset被触发ngSubmit事件

<form [formGroup]="someForm" novalidate (ngSubmit)="submit(someForm)">  

stuff 

<button (click)="reset()">Reset</button> 

<button type="submit">Submit</button> 

</form> 

...和reset方法是这样的:

reset(){ 
    this.someForm.reset(); 
} 

然后submit方法我已经提供了ngSubmit如果我点击Reset按钮会被调用。为什么?

我看到API documentation

reset(value?: any, {onlySelf, emitEvent}?: {onlySelf?: boolean, emitEvent?: boolean}) : void

...但onlySelfemitEvent似乎是完全没有证件。 emitEvent部分是否触发表单提交?

这总是这样吗?是否有其他地方我应该看看可以解释onlySelfemitEvent的文档?为什么有人想要表单重置提交表单?

回答

2

尝试指定重置按钮的类型。否则,它也可能默认为提交按钮。

<button type="button" (click)="reset()">Reset</button> 
+0

就是这样!我没有朝这个方向看 - 你为我节省了很多时间。一旦等待期结束,我会接受你的回答... – WillyC