, поэтому я искал в Google, искал здесь, ездил везде, и я не могу найти ответ. Я использую автозаполнение jQuery UI для поиска списка номеров идентификаторов элементов. Они могут быть любой длины от 1 - 99999.Автозаполнение не срабатывает при первом вводе
выпуска:
Когда я типа «2», например, ничего не происходит, то я ударил забой и типа «2» снова и на этот раз, все, что, начиная с 2 появляется ниже, и событие отображается в «Сетевом списке» в инструментах разработчика. Кроме того, когда я ищу 1, появляется только 1, но он не выполняет поиск, он просто плюет обратно на входное значение. но когда я нажимаю backspace и снова набираю 1, поиск срабатывает, и я получаю те же результаты, что и в случае с 2. Обычно независимо от того, какое число я набираю, он должен просто запускать по умолчанию, не так ли? Как исправить это и правильно обработать автозаполнение.
КОД:
$('.item-inventory').on('keyup', '#item_num', function(){
//var search = $(this);
var itemname;
var itemprice;
var itemdesc;
$(this).autocomplete({
delay : 100,
source: function(request, response){
$.ajax({
url: '../assets/server/orders/item_search.php',
dataType: 'JSON',
data: {search: request.term},
success: function (data){
var keys = data.search;
// $('#item-name').val(data.search[0].item);
// itemPrice = data.search[0].price;
// itemDesc = data.search[0].desc;
response($.map(keys, function(i){
return{
label : i.id
};
}));
}
});
},
minLength : 1
});
//$('#item-search-results').removeClass('hidden');
$(this).on('autocompleteselect', function(event, ui){
$('#item-search-results').removeClass('hidden');
});
});
Повторное подключение 'autocomplete' снова и снова на каждом событии' keyup'. Это не способ пойти :(вы можете предоставить образец HTML тоже? –
Я не видел проблемы, когда я использую этот метод в другом поле ввода. –
Это не значит, что это: a) правильно или b) что это изменение решение вашей проблемы :) –