Автозаполнение интерфейса Jquery не работает при первой загрузке страницы - PullRequest
0 голосов
/ 24 июня 2019

Моя html-страница содержит одно текстовое поле поиска документа, которое автоматически заполняет имя документа на основе ввода пользователя. Имена документов поступают из серверного скрипта через вызов Ajax. Следующий код, который работает нормально, но единственная проблема - это когда пользователь открывает новый браузер и вводит подсказки с автозаполнением в 3 символа, которые не заполняются. если пользователь вводит 4 символа, он работает, после этого пользователь вводит 3 символа, и он работает нормально.

$('#global-doc-search-box').keyup(function(e){
   thisObj.searchGlobalDocuments(e);
});

$("#global-doc-search-box").autocomplete({
    source: [{value: 'test', id: 'test', label: 'test'}],                           
    delay: 0
}).autocomplete("instance")._renderItem = function(ul, item) {  
   return $("<li></li>")
   .append("<div style='background-color: #fff;display:block;min-width:200px;padding: 10px;'><a style='text-decoration: none;' href='#' target='_blank'>" + item.value + "</a></div></li>")
   .appendTo(ul);
};

1 Ответ

0 голосов
/ 27 июня 2019

Я решил мою проблему. Я только что удалил явное событие keyup, нам не нужен явный список ключевых событий, похоже, что прослушивание ключевого события неявно настроено в функции автозаполнения.

...