Detect if checkbox is checked or unchecked in Angular.js ng-change event

124,687

You could just use the bound ng-model (answers[item.questID]) value itself in your ng-change method to detect if it has been checked or not.

Example:-

<input type="checkbox" ng-model="answers[item.questID]" 
     ng-change="stateChanged(item.questID)" /> <!-- Pass the specific id -->

and

$scope.stateChanged = function (qId) {
   if($scope.answers[qId]){ //If it is checked
       alert('test');
   }
}
Share:
124,687

Related videos on Youtube

Laziale
Author by

Laziale

Updated on July 09, 2022

Comments

  • Laziale
    Laziale almost 2 years

    I want to detect if a checkbox has been checked or unchecked when a click is happening on the checkbox.

    This is what I have:

    <input type="checkbox" ng-model="answers[item.questID]" ng-change="stateChanged()" />
    

    And then in the controller I have:

    $scope.stateChanged = function () {
        alert('test');
    }
    

    I'm able to fire the alert when I do check/uncheck but how can I detect the state of the checkbox? I did research a bit to find a similar issue but I wasn't able to get what I need.

  • Laziale
    Laziale over 9 years
    yes that was the fix, thanks, I'll select your answer in 8 minutes.