0
在Angular 2中使用FormBuilder
突出顯示髒字段和無效字段很容易。但是,您可以提交原始但無效的表單,而無需將字段更改爲髒。使用FormBuilder突出顯示原始但無效的表格
例如,此代碼將顯示,當您提交表單時未觸摸輸入,FormGroup
將無效,但.ng-pristine
將保留在文本字段中。這意味着用戶將不會收到有關文本字段出現問題的通知。
@Component({
template: `
<form [formGroup]="myFormGroup">
<input type="text" formGroupName="foo">
<input type="submit" value="Submit" (click)="onSubmit()">
</form>
`,
styles: [`
.ng-dirty.ng-invalid { border: 2px solid red; }
`]
})
export class AppComponent {
public myFormGroup: FormGroup;
constructor(private _fb: FormBuilder) {
this.myFormGroup = this._fb.group({
foo: ['', Validators.required]
});
}
public onSubmit(): void {
console.info('is the form pristine?', this.myFormGroup.pristine);
console.info('is the form valid?', this.myFormGroup.valid);
}
}
Plunker的示例。
如何在提交表單時將原始文件FormControl
更改爲髒?