我正在进行角度5表单验证,我的要求是当我点击提交时,验证应该不适用于ng-touch
答案 0 :(得分:0)
如果你有5+角,那么你可以使用新的updateOn属性:
这样的事情:
this.login = new FormGroup({
email: new FormControl(),
password: new FormControl()
}, { updateOn: 'submit' });
Angular 5现在为您提供了对事件进行验证的选项,例如控件模糊或使用此属性提交表单。
阅读here
如果您希望某个特定字段的行为不同(在下面的示例中为:email),您可以执行以下操作:
this.login = new FormGroup({
email: new FormControl(null, {
validators: Validators.required,
updateOn: 'blur'
}),
password: new FormControl(null, [Validators.required])
}, {updateOn: 'submit'})
答案 1 :(得分:0)
如果您使用的是Angular2 / 4,那么您可以试试这个
您组件中的
submitted: boolean = false;
ngOnInit() {
this.myForm = new FormGroup({
name: new FormControl('', [<any>Validators.minLength(5)]),
});
}
save(){
this.submitted =true;
if(this.myForm.invalid){
return;
}
// Here write your code for processing
}
在您的模板中
<form [formGroup]="myForm" novalidate (ngSubmit)="save()">
<label>Name</label>
<input type="text" formControlName="name">
<small *ngIf="!myForm.controls.name.valid && submitted">
Enter minimum 5 characters for name.
</small>
<button type="submit">Submit</button>
</form>