搜索应该基于名字和姓氏。在输入字母的过程中,单词的中间字母不应该出现。它应该只来自名字和姓氏。我从code pen和Github得到了自动补全代码,但根据要求,我需要自动搜索;
像这样:
Auto Search
发布于 2016-05-20 00:00:36
您应该考虑创建自己的自定义指令或使用现有的指令,如下面的https://github.com/guylabs/ion-autocomplete
发布于 2016-05-20 21:17:39
这是我的自动补全代码片段,我使用了它,但我需要名字和姓氏搜索(它不应该搜索随机的字母)-
var航空公司= {"fs":"LCI","iata":"LF","icao":"LCI",“name”:“老挝中央航空公司","active":true},{"fs":"TGU","iata":"5U","icao":"TGU","name":"TAG","active":true},{"fs":"BT","iata":"BT","icao":"BTI",”name“:”波罗的海航空“,"active":true},{"fs":"9J","iata":"9J","icao":"DAN","name":"Dana航空公司“,"active":true},{"fs":"2O","iata":"2O","icao":"RNE",”name“:”岛上航空服务“,"active":true},{"fs":"NPT","icao":"NPT",”name“:”大西洋航空“,"active":true},{"fs":"C8","iata":"C8","icao":"ICV","name":"Cargolux意大利“,"active":true},{"fs":"FK","iata":"FK","icao":"WTA",”name“:”非洲西部“,"active":true},{"fs":"8K","iata":"8K","icao":"EVS","name":"EVAS Air Charters","active":true},{"fs":"W8","iata":"W8","icao":"CJT",“name”:“货机”,"active":true},{"fs":"JBW","iata":"3J","icao":"JBW","name":"Jubba Airways (肯尼亚)“,"active":true},{"fs":"TNU","iata":"M8","icao":"TNU","name":"TransNusa","active":true},{"fs":"HCC","iata":"HC","icao":"HCC",“name”:“HCC”,“name”:“假日捷克航空”,"active":true},{"fs":"APJ",“icao”:“MM”,"icao":"APJ",“name”:“桃子航空”,"active":true},{"fs":"TUY","iata":"L4","icao":"TUY","name":"LTA","active":true},{"fs":"LAE","iata":"L7","icao":"LAE","name":"LANCO","active":true},{"fs":"L5*","iata":"L5","icao":"LTR","name":"Lufttransport","active":true},{"fs":"QA","iata":"QA","icao":"CIM","name":"Cimber","active":true},{"fs":"KBZ","iata":"K7","icao":"KBZ","name":"Air KBZ","active":true},{"fs":"L2","iata":"L2","icao":"LYC",“name”:“林登航空货运”,"active":true},{"fs":"MPK","iata":"I6","icao":"MPK",“name”:“印度航空","active":true},{"fs":"CAO","icao":"CAO",”name“:”国航货运“,"active":true},{"fs":"BEK","iata":"Z9","icao":"BEK","name":"Bek Air","active":true},{"fs":"IAE","iata":"IO","icao":"IAE","name":"IrAero","active":true},{"fs":"GL*","iata":"GL",“name”:“气辉航空服务”,"active":true},{"fs":"ATN","iata":"8C","icao":"ATN","name":"ATI","active":true},{"fs":"GU","iata":"GU","icao":"GUG","name":"Aviateca危地马拉","active":true},{"fs":"GHY","icao":"GHY",“name”:“德国天空航空”,"active":true},{"fs":"SS","iata":"SS","icao":"CRL","name":"Corsair","active":true},{"fs":"XK","iata":"XK","icao":"CCM",“name”:“CCM”,"active":true},{"fs":"W9*","iata":"W9","icao":"JAB","name":"Air Bagan","active":true},{"fs":"Z8*","iata":"Z8","icao":"AZN","name":"Amaszonas","active":true},{"fs":"D2","iata":"D2","icao":"SSF","name":"Severstal Aircompany","active":true},{"fs":"SNC","iata":"2Q","icao":"SNC",“name”:“航空货运公司”,"active":true},{"fs":"PST","iata":"7P","icao":"PST",“名称”:“巴拿马航空”,"active":true},{"fs":"VV","iata":"VV","icao":"AEW","name":"Aerosvit航空公司“,"active":true},{"fs":"UJ","iata":"UJ","icao":"LMU","name":"AlMasria","active":true},{"fs":"9U","iata":"9U","icao":"MLD",“姓名”:“摩尔航空”,"active":true},{"fs":"NF","iata":"NF","icao":"AVN",“name”:“瓦努阿图航空”,"phoneNumber":"678 238 48","active":true},{"fs":"NJS","iata":"NC","icao":"NJS",“name”:“科巴姆航空”,"active":true};
航空公司=airlines.sort(函数(a,b) {
var airlineA = a.name.to();
var airlineB = b.name.toLowerCase();
if(airlineA > airlineB) return 1;
if(airlineA < airlineB) return -1;
return 0;});
Console.log(航空公司);
angular.module('ionicApp','ionic')
.factory('FlightDataService',function($q,$timeout) {
var searchAirlines = function(searchFilter) {
console.log('Searching airlines for ' + searchFilter);
var deferred = $q.defer();
var matches = airlines.filter( function(airline) {
if(airline.name.toLowerCase().indexOf(searchFilter.toLowerCase()) !== -1 ) return true;
})
$timeout( function(){
deferred.resolve( matches );
}, 100);
return deferred.promise;
};
return {
searchAirlines : searchAirlines
}})
.controller('MyCtrl',['$scope','FlightDataService',function($scope,FlightDataService) {
$scope.myTitle = 'Auto Complete Example';
$scope.data = { "airlines" : [], "search" : '' };
$scope.search = function() {
FlightDataService.searchAirlines($scope.data.search).then(
function(matches) {
$scope.data.airlines = matches;
}
)
}}]);
https://stackoverflow.com/questions/37327802
复制相似问题