ng-class在模型刷新后没有评估

时间:2013-10-25 01:44:48

标签: javascript angularjs angularjs-ng-repeat

我有ng-class的ng-repeat。 getClass(item)根据存储在作用域中的数组计算行中的项。如果该项存在于数组中,则会为其分配一个类。

我有一个排序功能,可以通过服务器调用对服务进行排序。刷新后,ng-class不再评估

这是转发器:

<tr ng-repeat="item in set" ng-class="getClass(item)" ng-click="selectItem(item,$event,$index)" ng-dblclick="details(item)">
    <td ng-repeat="column in columns">{{item[column.value]}}</td>
</tr>

这是getClass:

getClass = function(item){
    if ($.inArray(item,scope.selectedItem)>-1){
        return 'ts-li-selected';
    } else {
        return '';
    }
}

这里是sort函数的代码:

$scope.filterCriteria = {
    sortDir:'asc',
    sortedBy:'UserName'
};
$scope.fetchResult = function(){
    $scope.users = User.search({sortBy:$scope.filterCriteria.sortedBy,sortDir:$scope.filterCriteria.sortDir})
};
$scope.onSort = function(sortedBy, sortDir) {
    $scope.filterCriteria.sortDir=(sortDir)?'asc':'desc';
    $scope.filterCriteria.sortedBy=sortedBy;
    $scope.fetchResult();
};

基本上,它默认按UserName升序排序。单击排序标题时,它会调用onSort函数,该函数会更改排序条件并从服务中获取新结果。

0 个答案:

没有答案