检测复选框是否在 Angular.js ng-change 事件中处于选中状态

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

本文关键字:事件 于选中 状态 ng-change js 复选框 是否 Angular 检测      更新时间:2023-09-26

我想检测在单击复选框时是否选中了复选框。

这是我所拥有的:

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

然后在控制器中,我有:

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

我可以在选中/取消选中时触发警报,但如何检测复选框的状态?我做了一些研究以找到类似的问题,但我无法得到我需要的东西。

你可以在 ng-change 方法中使用绑定的ng-modelanswers[item.questID] ) 值本身来检测它是否已被检查。

例:-

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

$scope.stateChanged = function (qId) {
   if($scope.answers[qId]){ //If it is checked
       alert('test');
   }
}
复选框

的状态将反映在您绑定到的任何模型上,在本例中为 $scope.answers[item.questID]