Je souhaite détecter si une case à cocher a été cochée ou non cochée lorsqu'un clic est effectué sur la case à cocher.
C'est ce que j'ai
<input type="checkbox" ng-model="answers[item.questID]" ng-change="stateChanged()" />
Et puis dans le contrôleur j'ai:
$scope.stateChanged = function () {
alert('test');
}
Je peux déclencher l'alerte lorsque je coche/décoche, mais comment puis-je détecter l'état de la case à cocher? J'ai fait quelques recherches pour trouver un problème similaire mais je n'ai pas pu obtenir ce dont j'avais besoin.
Merci, Laziale
Vous pouvez simplement utiliser la valeur liée ng-model
(answers[item.questID]
) Elle-même dans votre méthode ng-change pour détecter si elle a été vérifiée ou non.
Exemple:-
<input type="checkbox" ng-model="answers[item.questID]"
ng-change="stateChanged(item.questID)" /> <!-- Pass the specific id -->
et
$scope.stateChanged = function (qId) {
if($scope.answers[qId]){ //If it is checked
alert('test');
}
}
L'état de la case à cocher sera reflété sur le modèle auquel vous êtes lié, dans ce cas, $scope.answers[item.questID]