【问题标题】:Detect if checkbox is checked or unchecked in Angular.js ng-change event检测在 Angular.js ng-change 事件中复选框是选中还是未选中
【发布时间】:2015-02-09 06:52:00
【问题描述】:

当单击复选框时,我想检测复选框是否已选中或未选中。

这就是我所拥有的:

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

然后在我的控制器中:

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

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

【问题讨论】:

    标签: javascript jquery angularjs checkbox angularjs-scope


    【解决方案1】:

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

    例子:-

    <input type="checkbox" ng-model="answers[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');
       }
    }
    

    【讨论】:

    • 是的,已经解决了,谢谢,我会在 8 分钟内选择你的答案。
    【解决方案2】:

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

    【讨论】:

      猜你喜欢
      • 2014-05-25
      • 1970-01-01
      • 2015-04-10
      • 2017-08-17
      • 1970-01-01
      • 2018-02-09
      • 1970-01-01
      • 2020-04-08
      • 2022-01-12
      相关资源
      最近更新 更多