J'utilise un formulaire réactif pour la liste déroulante et je veux que les changements de valeur soient appelés lorsque la valeur de la liste déroulante change, j'ai implémenté comme ceci
ngOnInit() {
this.employeerosterForm = this._formbuilder.group({
drpDomain: [''],
drpPlatform: [{ value: this.platformInitialValue, disabled: this.platformControlDisabled }],
drpApplication: [{ value: this.applicationInitialValue, disabled: this.applicationControlDisabled }],
drpIndividual: [{ value: this.individualInitialValue, disabled: this.individualControlDisabled }]
})
this.employeerosterForm.controls.drpDomain
.valueChanges
.subscribe(domain => {
alert();
});
}
mais quand je change la valeur dans la liste déroulante, les changements de valeur ne sont pas appelés bien que j'aie souscrit. qu'est-ce qui ne va pas ?
J'ai même essayé d'utiliser ceci sur ngOninit()
this.employeerosterForm.get('drpDomain')
.valueChanges
.subscribe(domain => {
alert();
});
mais cela ne fonctionne pas
EDIT 1
HTML
<select class="form-control" formControlname='drpDomain'>
<option>Select Domain</option>
<option *ngFor='let d of domain' [value]='d.DOMAINNAME'>{{d.DOMAINNAME}}</option>
</select>
fichier .ts
ngOnInit() {
this.initializeControls();
this.interactionWatchDog();
}
interactionWatchDog() {
this.employeerosterForm.get('drpDomain')
.valueChanges
.subscribe(domain => {
alert();
});
}
initializeControls() {
this.employeerosterForm = this._formbuilder.group({
drpDomain: [''],
drpPlatform: [{ value: this.platformInitialValue, disabled: this.platformControlDisabled }],
drpApplication: [{ value: this.applicationInitialValue, disabled: this.applicationControlDisabled }],
drpIndividual: [{ value: this.individualInitialValue, disabled: this.individualControlDisabled }]
})
}