Angularjs 从第一个字母开始的角度自定义搜索

Angularjs 从第一个字母开始的角度自定义搜索,angularjs,search,Angularjs,Search,这就是我要找的。我从一个stackoverflow帖子中得到了这个例子 但是,在我的情况下,我需要使用名字的第一个字母进行搜索 这是json文件 var userList = { "user":[ { "image": "adam.jpg", "name": "Sanket Jain", "email": "SanketJain@gmail.com", "phone" : "9850987634" }

这就是我要找的。我从一个stackoverflow帖子中得到了这个例子

但是,在我的情况下,我需要使用名字的第一个字母进行搜索

这是json文件

var userList = {
    "user":[
      {
        "image": "adam.jpg",
        "name": "Sanket Jain",
        "email": "SanketJain@gmail.com",
        "phone" : "9850987634"
      },
      {
        "image": "ben.png",
        "name": "Amar Patil",
        "email": "amarPatil@gmail.com",
        "phone" : "9951983334"
      },
      {
        "image": "max.png",
        "name": "Prasad Kulkarni",
        "email": "prasadKulkarni@gmail.com",
        "phone" : "9253454634"
      },
      {
        "image": "mike.png",
        "name": "Tushar Salvi",
        "email": "tusharSalvi@gmail.com",
        "phone" : "9450987634"
      }
    ]
  };

myfilter
函数中,而不是此行

return item.startsWith(text);
试着写这个

return item.name.startsWith(text);

myfilter
函数中,而不是此行

return item.startsWith(text);
试着写这个

return item.name.startsWith(text);

如果您需要区分大小写:

angular.module('myapp', []).filter('myfilter', function(){
return function(input, text){
    return input.filter(function(item){
        return item.name.startsWith(text);
    });
};
});
angular.module('myapp', []).filter('myfilter', function(){
return function(input, text){
    return input.filter(function(item){
    var lowerStr = (item.name + "").toLowerCase();
        return lowerStr.indexOf(text.toLowerCase()) === 0;
    });
};
});
如果需要区分大小写:

angular.module('myapp', []).filter('myfilter', function(){
return function(input, text){
    return input.filter(function(item){
        return item.name.startsWith(text);
    });
};
});
angular.module('myapp', []).filter('myfilter', function(){
return function(input, text){
    return input.filter(function(item){
    var lowerStr = (item.name + "").toLowerCase();
        return lowerStr.indexOf(text.toLowerCase()) === 0;
    });
};
});

如果您需要区分大小写:

angular.module('myapp', []).filter('myfilter', function(){
return function(input, text){
    return input.filter(function(item){
        return item.name.startsWith(text);
    });
};
});
angular.module('myapp', []).filter('myfilter', function(){
return function(input, text){
    return input.filter(function(item){
    var lowerStr = (item.name + "").toLowerCase();
        return lowerStr.indexOf(text.toLowerCase()) === 0;
    });
};
});
如果需要区分大小写:

angular.module('myapp', []).filter('myfilter', function(){
return function(input, text){
    return input.filter(function(item){
        return item.name.startsWith(text);
    });
};
});
angular.module('myapp', []).filter('myfilter', function(){
return function(input, text){
    return input.filter(function(item){
    var lowerStr = (item.name + "").toLowerCase();
        return lowerStr.indexOf(text.toLowerCase()) === 0;
    });
};
});

我的解决方案区分大小写。如果您想要不区分大小写,那么zamarrowski提供的解决方案就可以了。我的解决方案区分大小写。我希望你不敏感,那么zamarrowski提供的解决方案就可以了。