0

我有一个带有选择框的表格来选择企业的工作时间。我想选择上午 9:00 作为第一个框的默认值,并选择下午 5:00 作为第二个框的默认值。

这是JSfiddle

例如,我有

<select ng-options="hour as (hour | date: 'shortTime') for hour in hours"
  ng-model="start_time" ng-change="update(start_time, $index, 1)">

如果在我的 app.js 中我将$scope.start_timeDate 对象设置为初始化为当前日期和时间为上午 9:00,则默认值被选为选择框中的最后一个值。由于我使用日期过滤器以“shortTime”格式在选择框中显示时间,这是默认值未正确显示的原因吗?

4

1 回答 1

1

只需start_time正确设置模型,例如在您的控制器中!

<select ng-options="hour as (hour | date: 'shortTime') for hour in hours track by hour"
        ng-model="start_time" ng-change="update(start_time, $index, 1)">

$scope.start_time = new Date(); // set default date in controller

使用最新的角度版本并track by hour解决问题:http: //jsfiddle.net/j8xu1h2h/

于 2015-10-07T18:05:41.043 回答