我有这个HTML http://pastebin.com/DegTb0iH
在其中的rullings中有一个ng-repeat rulling需要对每个员工进行投票计数,得到以下值:http://pastebin.com/EB4KigwS
问题出现在17,18和19行的HTML上,totalVotes总是在JS中返回0(或者只有最后的结果),如果你成功登录了console.log,那么每种类型的投票都会得到正确的结果
有人可以帮我一个忙吗?
答案 0 :(得分:0)
你使用voto_type
的不同值(足够公平)调用该函数三次但是在成功回调中所有这三个都将结果存储在$scope.totalVotes
中,这意味着他们将始终显示相同和最后的结果。
您需要将每个结果存储到单独的$ scope变量中。
E.g。 JS:
if (angular.isUndefined($scope.totalVotes)) {
$scope.totalVotes = {};
}
if (result.total > 0) {
$scope.totalVotes[voto_type] = result.total;
} else {
$scope.totalVotes[voto_type] = 0;
}
和HTML:
<p ng-init="getTotalVotes(rulling.id, 's')">Positivos: {{totalVotes['s']}}</p>
<p ng-init="getTotalVotes(rulling.id, 'n')">Negativos: {{totalVotes['n']}}</p>
<p ng-init="getTotalVotes(rulling.id, 'a')">Abstenções: {{totalVotes['a']}}</p>