2

在 Angular 2.0 中,使用 Form Builder 的模型驱动表单,我有,

 ngOnInit() {
    this.user = this.fb.group({
        id: ['', [Validators.required, Validators.minLength(2)]],
        name: ['', [Validators.required, Validators.minLength(5)]]
    });
    
    this.user.get('id').valueChanges.subscribe(value => {
                alert("Change detected); 
                });
}

在 HTML 中我有:

<input   type="text" formControlName="id" >

但是发生的事情是我在文本框中更改的每个字母 alert("Change detected"); 都被解雇了,而不是在 tabout 之后我只需要调用 alert("Change detected"). 我知道在 Angular 1.x 中可以通过使用来实现这一点,ng-model-options但是如何在 Angular 2.0 中实现同样的效果?

4

1 回答 1

1

您可以绑定到 onblur 处理程序

<input type="text" formControlName="id" (blur)="onBlur()">

在课堂上

onBlur(){
  alert("Change detected");  
}
于 2017-04-20T11:38:28.113 回答