我有一个使用ng-repeat
创建的表。在该表中,我有一个md-datepicker
。某些行的日期设置为yyyy-mm-dd
格式。我想将datepicker预先设置为该值(如果存在)。我应该怎么做呢?这是代码:
<tr ng-repeat="y in rides | orderBy : 'id'">
<td >{{y.Student}}</td>
<td>{{y.Instructor}}</td>
<td><md-datepicker ng-model="myDate" md-placeholder="Enter date" ng-change="dateChange(myDate, $index)"></md-datepicker></td>
</tr>
我尝试将ng-init="myDate = y.Date"
添加到我的重复中,但这并没有成功。
答案 0 :(得分:1)
只需添加ng-model = "y.Date"
<md-datepicker ng-model="y.Date" md-placeholder="Enter date" ng-change="dateChange(myDate, $index)"></md-datepicker>
被修改
创建过滤器以将字符串转换为日期
.filter('formatDate', function() {
return function(obj) {
debugger;
obj.Date = new Date(obj.Date);
return obj;
}
})
调用从ng init过滤到将字符串转换为日期
<tr ng-repeat="y in rides | orderBy : 'id'" ng-init=" y | formatDate ">
<td>{{y.id}}</td>
<td>
<md-datepicker ng-model="y.Date" md-placeholder="Enter date" ng-change="dateChange(myDate, $index)"></md-datepicker>
</td>
</tr>