需要根据来自JSON的日期对象按升序对列表进行排序

时间:2015-07-30 12:30:38

标签: angularjs

我想按日期按升序对列表进行排序。我从JSON获取日期对象。我正在使用orderBy过滤器,但它不起作用。

我的代码如下。

  <ul class="dropdown-menu">

                                <li ng-repeat="list in a.b.c| orderBy:'Date'">
                                    <div class="hoverBackground">
                                        <a href="javascript:void(0);" ng-disabled="(list[0].price * 1 == 0)" >{{list.Name}} </a>

                                    </div>

                                </li>
                            </ul>

在控制器中, $ scope.a.b.c = [];

2 个答案:

答案 0 :(得分:1)

disabled属性does not work包含lia元素,因此使用ng-disabled毫无意义。您必须自己添加disabled类并在css中处理它。

HTML:

 <li ng-repeat="" ng-class="{'disabled':item.price == 0}"><a></a></li>

为已禁用的li s设置背景颜色

.disabled .hoverBackground{
    background-color: transparent;
}

仅在未禁用li s

时悬停时更改背景颜色
li:not(.disabled) .hoverBackground:hover {
    background-color: //yourHoverColor
}

答案 1 :(得分:0)

none不是背景颜色的有效颜色。您可以根据自己的需要使用透明或继承或background: none;

var app = angular.module('app', []);

app.controller('myController', function($scope) {
  $scope.items = [{name:'a',price: 0}, {name:'b', price:1}];
});
.list-item:hover {
  background-color: blue;
}

.no-background:hover {
  background: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.15/angular.min.js"></script>
<div ng-app='app' ng-controller='myController'>
  <ul>
    <li ng-repeat="item in items" class="list-item" ng-class="{'no-background': !item.price}">{{item.name}} {{item.price}}</li>
  </ul>
</div>