我刚刚写了这段代码。它应该标记他们的日期列在过去的行。
这是代码:
<tr ng-repeat="row in records | orderBy: sortType : sortReverse" ng-class="{past_date:(date | date:'y M d') > (row.oddate | date:'y M d')}">
<td>{{ $index +1 }}</td>
<td>{{row.pname + " " + row.sname}}</td>
<td>{{row.areaname}}</td>
<td>{{row.oddate}}</td>
<td>{{row.odtime}}</td>
<td>{{row.cnt}}</td>
</tr>
我的应用程序有:
$scope.date = $filter('date')(Date.now(), 'yyyy-MM-dd');//new Date();
一切正常(标记了过去的行),但也标记了其他一些行!(05/06/2017 之前标记 - 好,06/06/2017 - 08/06/2017 未标记 - 好,11/06/2017-29/06/2017 标记 - 问题!,02/07/2017 及以上未标记 - 好)。
我检查了一下,所有的日期都很好。
可能是什么问题??
谢谢!
由于字符串比较“5”>“11”而发生问题
您将日期转换为y M d
,因此“2017 5 1”将被评估为大于“2017 11 1”
解决方案:使用零填充格式 yMMdd
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句