我有以下掠夺者:
http://plnkr.co/edit/ZJq0Qy3j5nGr1eJ9f9QA?p=preview
我想要做的是,如果选中至少一个复选框,则启用该按钮。
<button class="btn btn-danger" ng-click="removeSelectedRows()">Remove Selected Rows</button>
这很有效:
<button ng-disabled="mySwitch">Click</button>
<input type="checkbox" ng-model="mySwitch">
但是当我将它应用于我的示例时,它什么也没做。
有什么建议吗?
答案 0 :(得分:1)
请检查此插件:http://plnkr.co/edit/WpK2KXtAJC3gfl8MoMlZ?p=preview
如果模型中的任何项目true
使用$scope.$watch
函数,您可以运行检查:
$scope.$watch('tableSelection', function(val){
if(val){ //if value is not empty
$scope.disableRemoveButton = true;
for (var i in val){ //iterate props of the Object
if(val.hasOwnProperty(i)){ //only needed props
if(val[i] == true) {
$scope.disableRemoveButton = false;
}
}
}
}
}, true)
如果模型中存在真值,我们还会引入正在更改的其他标记$scope.disableRemoveButton
。这对应于模板中的<button class="btn btn-danger" ng-disabled="disableRemoveButton"
。