提交Angular4时触发表单验证

时间:2017-08-02 15:12:21

标签: angular validation angular2-forms ionic3 angular-forms

我使用Angular和ionic设计了一个模板驱动的表单,它有一些自定义(onblur)验证。

现在,我想在单击提交按钮时触发表单验证。

如果表单无效,我不想禁用提交按钮。

我试图标记控件并触摸或原始但它不起作用。

有些人可以帮助我。如果单击提交按钮并且表单有错误,我喜欢显示错误消息。

register(form){
      for (var i in form.controls) {
        console.log(form.controls[i]);
        form.controls[i].markAsTouched();
        form.controls[i].markAsPristine();
        form.controls[i]._touched = true;
      }
  }

IsMirroring="{Binding ElementName=MenuItemDownload}"

2 个答案:

答案 0 :(得分:2)

最简单的方法是使用布尔标记,例如submitted,在单击提交按钮后将其设置为true,然后在模板中将其添加到{{1} },例如像这样:

*ngIf

答案 1 :(得分:0)

因此,对于模板驱动的表单,验证需要做一些工作。我要说的第一件事是你可以在输入旁边添加标签或某种错误位,看起来就是这样......

  <div class="error" *ngIf="form.controls.firstname?.errors | json">
        {{form.controls.firstname?.errors | json}}
  </div>

如果你有一个提交按钮,就这样修改它......

<button type="submit" [disabled]="form.invalid">Submit</button>