2017-11-08 17 views
1

私はFormBuilderをAngular 4で使用しています。すべてのフィールドに入力しないと、送信ボタンを無効にする必要があります。FormBuilderのボタンを無効にする4

component.ts

public loginForm = this.fb.group({ 
email: ['', Validators.required], 
password: ['', Validators.required],}); 

constructor(
public fb: FormBuilder 
) { } 

component.html

<form [formGroup]="loginForm" (ngSubmit)="doLogin($event)"> 
    <input formControlName="email" type="email" placeholder="Your email"> 
    <input formControlName="password" type="password" placeholder="Your password"> 
    <button type="submit">Log in</button> 
</form> 

そして今ボタンがアクティブになって、それは適切ではない

enter image description here

答えて

3
<button type="submit" [disabled]="loginForm.invalid">Log in</button> 
3

<form [formGroup]="loginForm" (ngSubmit)="doLogin($event)"> 
    <input formControlName="email" type="email" placeholder="Your email"> 
    <input formControlName="password" type="password" placeholder="Your password"> 
    <button type="submit" [disabled]="!loginForm.valid">Log in</button> 
</form> 
フォーム検証の状態を確認して使用disabledプロパティ:あなたは、明示的にそれを言う必要がある
関連する問題