我试图通过一年中的几个月来获得一个下拉框作为选项。我不想手动创建一个包含月份名称的数组,所以我已经这样做了:
<select ng-model="selected.month">
<option ng-repeat="month in repeatX(12) track by $index" value="{{$index}}">{{newDate(2015,$index,1) | date: 'MMMM'}}</option>
</select>
然后在我的控制器中:
$scope.repeatX = function(num){ return new Array(num); }
$scope.newDate = function(y,m,d){ return new Date(y,m,d); }
因此ngRepeat
处理一个包含12个空字段的数组。然后使用repeat的索引和日期过滤器。下拉列表显示正确,例如第一个选项是&1;&#39; 1月&#39;值为&#39; 0&#39;。
我似乎无法设置初始值。例如,我在我的控制器中尝试这个:
$scope.selected = { month: '8' };
我已经尝试过整数:
$scope.selected = { month: 8 };
也没有将下拉菜单设置为9月。我做错了什么?