所以我需要做的只是通过点击页面顶部的toggleAll()按钮来检查所有显示的(使用ng-show)学生复选框。
这是我的代码:
<div ng-repeat="course in content" ng-show="course.show" >
<div ng-repeat="student in course.students" ng-show="student.show" ng-click="toggleStudent(student)">
<input type="checkbox">
........
我尝试使用:
$scope.toggleAll = function () {
for (var i = 0; i < $scope.course.students.length; i++) {
...
}
};
但长度未定义。 任何帮助将不胜感激!
答案 0 :(得分:0)
当然是一个局部变量,因此无法在主范围内访问。
假设您只想检查一门课程的全部内容,您应该将该课程传入该课程。
<div ng-repeat="course in content" ng-show="course.show" >
<input type='checkbox' ng-click='toggleAll(course)'>
<div ng-repeat="student in course.students" ng-show="student.show" ng-click="toggleStudent(student)">
...
$scope.toggleAll = function (course) {
for (var i = 0; i < course.students.length; i++) {
...
}
};