javascript - 检测复选框在 Angular.js ng-change 事件中是否被选中或未被选中

标签 javascript jquery angularjs checkbox angularjs-scope

我想在复选框上发生点击时检测该复选框是否被选中或取消选中。

这是我的:

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

然后在 Controller 中我有:

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

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

最佳答案

您可以在 ng-change 方法中使用绑定(bind)的 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');
   }
}

关于javascript - 检测复选框在 Angular.js ng-change 事件中是否被选中或未被选中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27411826/

相关文章:

javascript - 在 mootools 中复制元素及其属性

javascript - Chrome 12.0.742.100 和空 a/span 定位问题

javascript - 计算 div 内填充输入的百分比

javascript - 在 keydown/keyup 上切换显示/隐藏密码

PHP jQuery 更新可排序嵌套菜单

javascript - 刷新 html 以了解指令一致模型更改

javascript - 在 ArcGIS Web AppAbuilder 中将自定义库添加到微件

javascript - 平滑滚动 jquery 插件在刷新时重置滚动起点。有没有办法来解决这个问题?

javascript - 如何优化 Angularjs 中实时通知的 $interval?

javascript - Meteorjs + Angular2点击链接不重新渲染页面