Javascript 我有一个复选框列表和AngularJS中的提交按钮

Javascript 我有一个复选框列表和AngularJS中的提交按钮,javascript,html,angularjs,checkbox,Javascript,Html,Angularjs,Checkbox,如果选中了至少一个作业,我喜欢启用“取消”按钮 这是我的HTML视图 我是AngularJS的新手。添加检查作业集合的每个作业中的属性 <table > <tr ng-repeat="x in jobs" ng-class-odd="'odd'" ng-class-even="'even'"> <td style="width: 247px; "> <input type="checkbox" ng-mod

如果选中了至少一个作业,我喜欢启用“取消”按钮

这是我的HTML视图
我是AngularJS的新手。

添加
检查
作业
集合的每个
作业
中的属性

<table >
     <tr ng-repeat="x in jobs" ng-class-odd="'odd'" ng-class-even="'even'">
        <td style="width: 247px; ">
           <input type="checkbox" ng-model="x.checked">
        </td>
        <td style="width: 247px; ">{{ x.Name }}</td>
        <td style="width: 247px; ">{{ x.Id }}</td>
    </tr>
</table>

您还可以向收藏中添加手表

<table>
   <tr ng-repeat="x in jobs" ng-class-odd="'odd'" ng-class-even="'even'">
     <td style="width: 247px;">
        <input type="checkbox" ng-model="checked">
     </td>
     <td style="width: 247px;">{{ x.Name }}</td>
     <td style="width: 247px;">{{ x.Id }}</td>
   </tr>
</table>

<button ng-click="myFunc()" ng-disabled="!isAtLeastARowChecked">Cancel</button>


$scope.$watchCollection("jobs", function(newVal, oldVal){
    isAtLeastARowChecked = (newVal && newVal.length > 0);
});

{{x.Name}
{{x.Id}
取消
$scope.$watchCollection(“作业”,函数(newVal,oldVal){
isAtLeastARowChecked=(newVal&&newVal.length>0);
});
我认为这是一个更具可读性、简洁和优雅的解决方案。有关更多信息,请查看

<table >
     <tr ng-repeat="x in jobs" ng-class-odd="'odd'" ng-class-even="'even'">
        <td style="width: 247px; ">
           <input type="checkbox" ng-model="x.checked">
        </td>
        <td style="width: 247px; ">{{ x.Name }}</td>
        <td style="width: 247px; ">{{ x.Id }}</td>
    </tr>
</table>
$scope.countChecked = function(){
    var count = 0;
    angular.forEach($scope.jobs, function(job){
        if (job.checked) count++;
    });

    return count;
}
<table>
   <tr ng-repeat="x in jobs" ng-class-odd="'odd'" ng-class-even="'even'">
     <td style="width: 247px;">
        <input type="checkbox" ng-model="checked">
     </td>
     <td style="width: 247px;">{{ x.Name }}</td>
     <td style="width: 247px;">{{ x.Id }}</td>
   </tr>
</table>

<button ng-click="myFunc()" ng-disabled="!isAtLeastARowChecked">Cancel</button>


$scope.$watchCollection("jobs", function(newVal, oldVal){
    isAtLeastARowChecked = (newVal && newVal.length > 0);
});