【发布时间】:2015-03-29 23:11:10
【问题描述】:
我有一份学生名单,以及他们是否在课堂上。
var studentList = [
{id: '111', name: 'Anna', present: '1'},
{id: '222', name: 'Bob', present: '1'},
{id: '333', name: 'Cath', present: '1'},
{id: '111', name: 'Anna', present: '0'},
{id: '222', name: 'Bob', present: '0'},
{id: '333', name: 'Cath', present: '1'}
];
我想输出一些产生以下结果的html。
<ul>
<li>Cath || 2</li>
<li>Anna || 1</li>
<li>Bob || 1</li>
</ul>
如果学生在场或缺席,我想要做的是 foreach id 计数,然后在页面底部提供总数。
这是我目前所拥有的。
<div ng-controller="MainController">
<ul>
<li ng-repeat="student in students">{{ student.name }} ||{{student.present}}<li>
</ul>
</div>
<script>
angular.module('app',[])
.controller('MainController', function($scope) {
var studentList = [
{id: '111', name: 'Anna', present: '1'},
{id: '222', name: 'Bob', present: '1'},
{id: '333', name: 'Cath', present: '1'},
{id: '111', name: 'Anna', present: '0'},
{id: '222', name: 'Bob', present: '0'},
{id: '333', name: 'Cath', present: '1'}
];
$scope.students = studentList;
var presntTotal = 0;
$scope.students.forEach(function(item) {
presntTotal += parseInt(item.present,10);
});
$scope.presntTotal = presntTotal;
console.log(presntTotal); //outputs 4
});
</script>
如何为每个学生获取一个 presentTotal,以便我可以像上面显示的那样显示它? see codepen demo
【问题讨论】:
标签: javascript json angularjs foreach angularjs-ng-repeat