This。我从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"
}
]
};
答案 0 :(得分:0)
在myfilter
函数中,而不是此行
return item.startsWith(text);
尝试写这个
return item.name.startsWith(text);
答案 1 :(得分: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;
});
};
});