[英]Angular 2 display validation errors after form submit
目前没有办法。 您可以自己在提交处理程序中设置标志。
虽然正在进行中
看到
- https://github.com/angular/angular/issues/2960 - https://github.com/angular/angular/pull/7449
我不认为接受的答案 - 以及Angular的相关更新真的回答了这个问题。
你可以使用form.submitted吗? 标记以查明用户是否已尝试提交 - 但不会自动显示错误(例如,如果您有必填字段且用户未在您的表单上输入任何内容但只是点击提交,那么您会期望所有必需的字段以显示所需的错误通知)。
这可以按如下方式完成:
onSubmit() {
if (this.form.valid) {
console.log('form submitted');
} else {
this.validateAllFormFields(this.form);
};
}
validateAllFormFields(formGroup: FormGroup) {
Object.keys(formGroup.controls).forEach(field => {
const control = formGroup.get(field);
if (control instanceof FormControl) {
control.markAsTouched({ onlySelf: true });
} else if (control instanceof FormGroup) {
this.validateAllFormFields(control);
}
});
}
这里有信用和完整的解释。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.