javascript - Angular 6 中的表单重置

标签 javascript angular

我是 Angular 6 的新手,正在从事 Angular 项目。提交表单后重置表单时遇到问题。以下是代码:

<form [formGroup]="commentForm">
<div class="col-md-8 "  [ngClass]="{ 'is-invalid': submitted && f.comment.errors }">
   <textarea class="form-control" [(ngModel)]="commentsData.comment"   [ngClass]="{ 'is-invalid': submitted && f.comment.errors }" formControlName="comment" placeholder="Add a Comment..." rows="5" cols="8"> </textarea>
</div>
</form>

在 Components.ts 文件中,我使用它来重置表单

 this.commentForm.reset();

表单值已成功清除,但唯一的问题是重置表单字段边框后为红色。我正在努力

this.commentForm.markAsPristine();

但没有任何帮助

最佳答案

重置后,您可以将表单的setErrors设置为 null。

for( let i in this.commentForm.controls ) {

        this.commentForm.controls[i].setErrors(null);
}

关于javascript - Angular 6 中的表单重置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55881711/

相关文章:

html - 具有渐变的 Ionic 3 背景图像在设备中不起作用

Angular NgRx - 在效果中使用 store.dispatch 是不好的做法吗?

angular - 两个 Angular 4 应用程序之间的通信

javascript - Ajax.BeginForm 淡出不工作

javascript - 从一小时的最后一分钟到下一小时的第一分钟

javascript - jQuery split() 不是...... split ?

javascript - 如何从电子邮件地址中检索姓名

javascript - key123 在 javascript 函数中包含什么或含义

angular - window.URL.createObjectURL [Angular 7/Typescript]

angular - 使用 Angular 2 在 n 秒后自动重定向