Javascript Angularjs显示和隐藏复选框上的按钮复选框
我正在使用创建我的表。我在桌子顶部有一个最初禁用的按钮。如果选中任何复选框,我希望启用此按钮。当复选框的非复选框被选中时,按钮将再次禁用。我如何才能准确地做到这一点 我的示例代码: HTMLJavascript Angularjs显示和隐藏复选框上的按钮复选框,javascript,angularjs,ngtable,Javascript,Angularjs,Ngtable,我正在使用创建我的表。我在桌子顶部有一个最初禁用的按钮。如果选中任何复选框,我希望启用此按钮。当复选框的非复选框被选中时,按钮将再次禁用。我如何才能准确地做到这一点 我的示例代码: HTML <button class="btn btn-default pull-right" disabled >Remove Selected</button> <table ng-table="tableParams" show-filter="true" class="
<button class="btn btn-default pull-right" disabled >Remove Selected</button>
<table ng-table="tableParams" show-filter="true" class="table ng-table-responsive">
<tr ng-repeat="user in $data" ng-class="{ 'emphasis': user.money > 500 }">
<td width="30" style="text-align: left" header="'ng-table/headers/checkbox.html'">
<input type="checkbox" ng-model="checkboxes.items[user.id]" />
</td>
<td data-title="'Name'" filter="{ 'name': 'select' }" filter-data="names($column)">
{{user.name}}
</td>
<td data-title="'Money'" sortable="'money'">
{{user.money}}
</td>
</tr>
</table>
<script type="text/ng-template" id="ng-table/headers/checkbox.html">
<input type="checkbox" ng-model="checkboxes.checked" id="select_all" name="filter-checkbox" value="" />
</script>
提前谢谢你。你需要一种叫做手表的东西。您需要定义它来观察复选框数组,并根据它找到的内容将变量设置为true或false。每次运行摘要时,手表都会更新。您实际上可以让分配给get的ng类处于启用/禁用状态,也可以通过ng单击来执行其功能,如果该类处于禁用状态,则返回false/您的复选框计数=total或根据您的逻辑返回0 希望能有帮助
<button class="btn btn-default pull-right" ng-class="allClass()" ng-click="allClass('click')">Remove Selected</button>
$scope.allClass = function(mode){
if(mode==='click'){
if(!$scope.checkboxes.checked){
return; //if class is disabled dont do anything
}else{
if (!$scope.users) {
return;
}
var checked = 0, unchecked = 0,
var total = $scope.users.length;
angular.forEach($scope.users, function(item) {
checked += ($scope.checkboxes.items[item.id]) || 0;
unchecked += (!$scope.checkboxes.items[item.id]) || 0;
});
if(cheked>0){
//do your thing
}
}
}else{
//this is for the ng-class attr call
return $scope.checkboxes.checked ? '' : 'disabled';
//add some css to your file to look like disable button
}
}
Remove Selected
$scope.allClass=函数(模式){
如果(模式=='click'){
如果(!$scope.checkbox.checked){
return;//如果类被禁用,则不执行任何操作
}否则{
if(!$scope.users){
返回;
}
var checked=0,unchecked=0,
var total=$scope.users.length;
angular.forEach($scope.users,函数(项){
选中+=($scope.checkbox.items[item.id])|0;
未选中+=(!$scope.checkbox.items[item.id])|0;
});
如果(勾选>0){
//做你的事
}
}
}否则{
//这是用于ng类attr调用的
返回$scope.checkbox.checked?“”:“已禁用”;
//向文件中添加一些css,使其看起来像“禁用”按钮
}
}
以下是一个示例:
将复选框ng checked属性设置为$scope变量,以便我们可以将“checked”状态绑定到模型。然后,我们可以在按钮的ng disabled属性上使用一个函数,该函数将根据当前是否选中任何复选框返回布尔值。如果选中了任何复选框,则该按钮将被启用。在示例中,已有两个监视复选框。。这是否可能与它们整合?怎么做?你能更新checkbox.html吗?对不起,我错过了!现在更新
<button class="btn btn-default pull-right" ng-class="allClass()" ng-click="allClass('click')">Remove Selected</button>
$scope.allClass = function(mode){
if(mode==='click'){
if(!$scope.checkboxes.checked){
return; //if class is disabled dont do anything
}else{
if (!$scope.users) {
return;
}
var checked = 0, unchecked = 0,
var total = $scope.users.length;
angular.forEach($scope.users, function(item) {
checked += ($scope.checkboxes.items[item.id]) || 0;
unchecked += (!$scope.checkboxes.items[item.id]) || 0;
});
if(cheked>0){
//do your thing
}
}
}else{
//this is for the ng-class attr call
return $scope.checkboxes.checked ? '' : 'disabled';
//add some css to your file to look like disable button
}
}