Как и в заголовках, я использую один и тот же код для обеих функций, например:
function autoComplete() {
var jarName = $("#artifactId").val();
var jarVersion = $("#version").val();
url = "/xx/yy/zz/"+jarName+"/"+jarVersion+"";
if (jarVersion===""){
url = "/api/eetools/appdependencyfinder/"+jarName+"";
}
$.getJSON(url, function(completion) {
$("#version").autocomplete({
source: completion,
minLength: 0
})
.focus(function() {
$(this).autocomplete('search', $(this).val())
});
});
}
$("#version").on('keyup',autoComplete);
$("#version").on('click',autoComplete);
Я изменил автозаполнение с здесь
Я хотелпри нажатии показать все возможные варианты.
И при щелчке это работает для всех в вопросе, который я связал с созданной мной функцией.Однако, когда я нажимаю, это не работает.Если я нажму, перейду с экрана на новую вкладку, а затем вернусь, это работает.или, если я нажму на поле, щелкните по нему, а затем щелкните по нему еще раз.Можете ли вы увидеть причину такого типа поведения?
Это похоже на то, что для регистрации требуется 1 клик, затем на втором все работает.
Я попытался удалить on ('click')Функция и тестирование keyup, и заметили, что теперь для 'keyup' требуется 2 keyups для работы
После помещения console.log (завершение) в callback и console.log («HERE») внутри вызова фокуса, который я видел нажурнал завершения выполнения будет напечатан несколько раз, но не ЗДЕСЬ, и если я выключу экран, то снова здесь ЗДЕСЬ будет вставлять себя между отпечатками завершения.