angular - 如何在 ANGULAR 2 中提交表单时重置表单验证

标签 angular angular2-forms

我必须在验证的同时重置我的表单。有什么方法可以将表单状态从 ng-dirty 重置为 ng-pristine。

最佳答案

这是它目前在 Angular 4.1.0 - 5.1.3 中的工作方式:

class YourComponent {
    @ViewChild("yourForm")
    yourForm: NgForm;


    onSubmit(): void {
        doYourThing();

        // yourForm.reset(), yourForm.resetForm() don't work, but this does:
        this.yourForm.form.markAsPristine();
        this.yourForm.form.markAsUntouched();
        this.yourForm.form.updateValueAndValidity();
    }
}

关于angular - 如何在 ANGULAR 2 中提交表单时重置表单验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34608361/

相关文章:

javascript - Angular 2 CLI 正在编译,但浏览器未反射(reflect)在 WebStorm 中所做的更改

typescript - 不知道如何使用 angular2 类中的接口(interface)实现枚举

angular - 访问自定义表单控件的有效值

Angular 2 :Error - Cannot find a differ supporting object '[object Object]' of type 'object' . NgFor 仅支持绑定(bind)到可迭代对象,例如数组

javascript - Angular 2.3.1 异步自定义验证程序 promise 无法解决

javascript - 我需要从 Angular 2 中的其他组件获取公共(public)方法

angular - 在与 parent 相同的路由器 socket 中使用子路由

javascript - 在 Angular 2 中的应用程序模板之外定义路由链接

node.js - 在 Angular4 CLI 中读取 Azure 应用程序设置

Angular 2仅选择最后一个选项作为预选的FormGroup