2016-04-21 2 views
2

Я реализовал автозаполнение, которое извлекает все данные с помощью столбца ajax из базы данных и добавляет их в автозаполнение как элемент. который показан нижеJQuery Autocomplete поиск обоих букв

jQuery.ajax({ 
 
    url: "--url--", 
 
    dataType: 'jsonp', 
 
    success: function(data){ 
 
     jQuery("#location_finder").autocomplete({ 
 
      source: function(request, response) { 
 
       var lookup = jQuery.ui.autocomplete.escapeRegex(request.term); 
 
       var matcher = new RegExp("^" + lookup, "i"); 
 
       response(jQuery.grep(data, function(item){ 
 
        return matcher.test(item); 
 
       })); 
 
      } 
 
     }); 
 
    }, 
 
});

Данные, после того, как сообщение придет, как:

data = ['Berti','Simon','Çarli','Cherpa'];

Хотя делать ввод в поле ввода для буквы "C" только " Черпа ", но я стараюсь показать« Чарли »также и пользователю. Как я могу справиться с этим и дать возможность пользователю как буквы «C», так и «Ç»? Заранее спасибо.

ответ

1

Вы можете попробовать:

var lookup = jQuery.ui.autocomplete.escapeRegex(request.term); 
if(lookup.indexOf('C') != -1 || lookup.indexOf('Ç') != -1) { 
    lookup.replace("C", "(C|Ç)"); 
    lookup.replace("Ç", "(C|Ç)") 
} 
var matcher = new RegExp("^" + lookup, "i"); 
+0

спасибо человеку за большой ответ. – Alihuseyn

Смежные вопросы