以angularJS过滤数据

时间:2014-10-29 09:26:13

标签: angularjs

在搜索时,angularJS是否可以在第1页显示第2页的数据?

我们说,我有50条数据记录。现在它分为5页,每页10条记录。现在,我希望在过滤时显示第5页数据第1页中的数据。

如果可能的话,请给我一个想法。

var searchMatch = function (haystack, needle) {
    if (!needle) {
        return true;
    }
    return haystack.toLowerCase().indexOf(needle.toLowerCase()) !== -1;
};

// init the filtered items
$scope.search = function () {
    $scope.filteredItems = $filter('filter')($scope.events, function (event) {
        for(var attr in event) {
            if (searchMatch(event[attr], $scope.query))
                return true;
            }
        return false;
    });
    // take care of the sorting order
    if ($scope.sortingOrder !== '') {
        $scope.filteredItems = $filter('orderBy')($scope.filteredItems, $scope.sortingOrder, $scope.reverse);
    }
    $scope.currentPage = 0;
};

TIA ..

1 个答案:

答案 0 :(得分:0)

我更喜欢以下想法。 我有一个名为totalObj的对象,有50条记录,我使用它来显示DOM,使用ng-repeat.Now复制orgTotalObj变量中的对象。现在,当用户按任何条件搜索时,您将搜索orgTotalObj并使用此搜索项更新totalObj变量。现在只有一个元素将显示在DOM中。如果用户取消搜索,那么您可以再次将orgTotalObj分配给totalObj以显示所有记录。