我为这个问题创建了这个codepen http://codepen.io/anon/pen/JaAtm
问题在于,当我选择2014作为选择中的过滤器时,月份的顺序无效。
<html ng-app>
<head></head>
<body>
<div ng-controller="cor">
<select ng-model="s">
<option value=2013>2013</option>
<option value=2014>2014</option>
</select>
<table>
<tr>
<th>Year</th>
<th>Month</th>
<th>Days</th>
</tr>
<tr ng-repeat="item in items | orderBy:Month | filter:s">
<td>{{item.year}}</td>
<td>{{item.Month}}</td>
<td>{{item.NumberOfDays}}</td>
</table>
</div>
function cor($scope) { $scope.items = [{"NumberOfDays":"41","Month":"1","MonthName":"Januar","year":"2013"}.....
答案 0 :(得分:3)
即使没有选择任何东西,它也没有正确排序。 orderBy应该是:
orderBy:'Month'
因为您希望按名为&#39; Month&#39;的商家订购日期,而不是按$scope.Month
的值命名的商家订购。
下一个问题是您将月份存储为字符串而不是将其存储为数字,因此使用字典顺序而不是数字顺序。