简体   繁体   English

如何在 Angular 中手动提交响应式表单?

[英]How to submit reactive form manually in Angular?

I have a reactive form of forms.我有一种反应形式的形式。 So I need to submit the main form on the last child form submit.所以我需要在最后一个子表单提交时提交主表单。 Is there a way to do it manually?有没有办法手动完成?

<form class="main-form" [formGroup]="form" (ngSubmit)="sendData()">
  <form *ngIf="currentQuestion === 1" class="form" (submit)="nextQuestion()" formGroupName="nameQuestion"></form>
  <form *ngIf="currentQuestion === 3" class="form" (submit)="nextQuestion()" formGroupName="phoneQuestion"></form>
  <form *ngIf="currentQuestion === 4" class="form" (submit)="nextQuestion()" formGroupName="marketsQuestion"></form>
  <form *ngIf="currentQuestion === 5" class="form" (submit)="nextQuestion()" formGroupName="biographyQuestion"></form>
</form>

Sure, you don't need to use the ngSubmit if you don't want to.当然,如果您不想使用,则不需要使用ngSubmit Remove that and add whatever logic you need to your nextQuestion() method.删除它并将您需要的任何逻辑添加到nextQuestion()方法中。

<form class="main-form" [formGroup]="form">
  <form *ngIf="currentQuestion === 1" class="form" (submit)="nextQuestion()" formGroupName="nameQuestion"></form>
  <form *ngIf="currentQuestion === 3" class="form" (submit)="nextQuestion()" formGroupName="phoneQuestion"></form>
  <form *ngIf="currentQuestion === 4" class="form" (submit)="nextQuestion()" formGroupName="marketsQuestion"></form>
  <form *ngIf="currentQuestion === 5" class="form" (submit)="nextQuestion()" formGroupName="biographyQuestion"></form>
</form>

In your component:在您的组件中:

nextQuestion(){

...

 if (currentQuestion === 5){
    this.form.values // Your form values, do what you want with them.
 }
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM