2014-10-29 128 views
-1

angularJS是否有可能在搜索時在第1頁中顯示第2頁分頁的數據?在angularJS中過濾數據

比方說,我有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 ..

+0

您必須分享您當前的工作代碼。 – 2014-10-29 09:37:38

+0

@Rahil其實,現在我在搜索時顯示相應頁面中的數據,但我的問題是我想在第一頁顯示第3頁的數據,同時用戶在第1頁搜索 – DIVA 2014-10-29 09:50:30

+0

您如何期待我們給你一個想法無法看到你的代碼? – 2014-10-29 10:06:21

回答

0

我更喜歡下面的想法。 我有一個名爲totalObj的對象有50條記錄,我使用它在DOM中使用ng-repeat.Now複製該對象在orgTotalObj變量中顯示。現在,當用戶按任何標準搜索時,您在orgTotalObj中搜索並使用此搜索項更新totalObj變量。現在,DOM中只會顯示一個元素。如果用戶取消搜索,則可以再次將orgTotalObj分配給totalObj以顯示所有記錄。

+0

您能否告訴我這個例子? – DIVA 2014-10-29 10:38:50

+0

你可以在jsfiddle上分享你的代碼嗎?沒有看到代碼就很難給出例子 – 2014-10-29 10:44:59

+0

http://jsfiddle.net/Ls14bcwf/ – DIVA 2014-10-29 10:56:49