Javascript 使用AngularJs分页时的搜索框筛选器

Javascript 使用AngularJs分页时的搜索框筛选器,javascript,angularjs,pagination,Javascript,Angularjs,Pagination,我已经创建了相册和uib分页,现在我想添加一个搜索框。我的页码由5页组成。我使用的过滤器只搜索当前页面中的照片。例如,如果我转到第10页,想搜索第1页中的图片,则该过滤器不起作用。但它会搜索并显示第10页中的图片。 我想知道我应该使用哪个过滤器来让我能够搜索所有页面的图片 js代码: paintApp.controller('intController', ['$scope','$location','$log', function($scope,$location, $log){ t

我已经创建了相册和uib分页,现在我想添加一个搜索框。我的页码由5页组成。我使用的过滤器只搜索当前页面中的照片。例如,如果我转到第10页,想搜索第1页中的图片,则该过滤器不起作用。但它会搜索并显示第10页中的图片。 我想知道我应该使用哪个过滤器来让我能够搜索所有页面的图片

js代码:

paintApp.controller('intController', ['$scope','$location','$log', function($scope,$location, $log){

    this.images = [];

    for(i = 1 ; i <51 ; i++){
        this.images.push(i);    
    }

    this.currentPage = 1 ; 
    this.numPerPage = 9 ; 
    this.maxSize = 6;

    this.pageChanged = function() {
        $location.path( "int/"+this.currentPage , false);

    };
}]);

    paintApp.filter('imgThumb', function(){
        return function(images, start){
            return images.slice(start);
        }
    });
paintApp.controller('intController',['$scope','$location','$log',函数($scope,$location,$log){
this.images=[];
对于(i=1;i


{{img}}


现在,您首先应用
限制过滤器,它将生成一个包含九个元素的数组,然后将
过滤器
过滤器应用于该数组

您需要首先应用
过滤器
过滤器,然后应用
限制
,因此更改过滤器的顺序:

... | filter: search | limitTo:intCtrl.numPerPage

当我想从0到9中搜索单个图像时,它会给我带来包括单个数字在内的所有图像。我怎么写一个过滤器来考虑单个数字独立?我的意思是,如果我正在寻找图像“1”,它直接告诉我具体图像不是所有的图像都有“1”。在数字中添加
true
如下:
|过滤器:搜索:true
以进行严格的比较。请注意,您需要在演示中将输入更改为number类型:您可以使用变量而不是
true
,并根据需要进行更改。请注意,当输入为因为找不到任何结果。感谢您非常友好和清晰的解释:)搜索框不显示前几页中的图像。例如,如果我们转到第3页,它会显示当前页和下一页中的图像,但不会显示前几页(如第1页或第2页)中的图像!如果用户写入大量数组中不存在的图像,我如何添加警报。我在onReset函数中添加了另一个If子句n并且它适用于警报:this.onReset=function(){if(this.search==null){this.search=undefined;}if(this.search>45){alert('Please select from 1-45');};
... | filter: search | limitTo:intCtrl.numPerPage