J'ai dans ma page .html une liste déroulante,
Menu déroulant:
<select ng-model="blisterPackTemplateSelected" data-ng-options="blisterPackTemplate as blisterPackTemplate.name for blisterPackTemplate in blisterPackTemplates">
<option value="">Select Account</option>
</select>
Je souhaite exécuter une action lorsque l'utilisateur sélectionne une valeur. Donc, dans mon contrôleur, j'ai fait:
Manette:
$scope.$watch('blisterPackTemplateSelected', function() {
alert('changed');
console.log($scope.blisterPackTemplateSelected);
});
Mais la modification de la valeur dans la liste déroulante ne déclenche pas le code: $scope.$watch('blisterPackTemplateSelected', function()
En conséquence, j'ai essayé une autre méthode avec un: ng_change = 'changedValue()'
sur la balise de sélection
et
Fonction:
$scope.changedValue = function() {
console.log($scope.blisterPackTemplateSelected);
}
Mais le blisterPackTemplateSelected
est stocké dans une portée enfant. J'ai lu que le parent ne peut pas accéder à la portée enfant.
Quelle est la bonne / meilleure façon d'exécuter quelque chose lorsqu'une valeur sélectionnée dans une liste déroulante change? Si c'est la méthode 1, qu'est-ce que je fais de mal avec mon code?