#javascript #jquery
#javascript #jquery
Вопрос:
Я использую автозаполнение jQuery и сталкиваюсь с проблемой, когда он не обнаруживает, что он пуст.
$("#autocomplete").on("autocompleteopen", function() {
if (!$(this).val()) {
console.log("I am empty");
} else {
console.log("I am not empty");
}
Ввод начинается как пустой, и если я набираю букву t
, которую я вижу I am not empty
напечатанной на консоли. Если я удаляю t
из ввода, я ничего не вижу, напечатанного на консоли.
test
Если я набираю и возвращаю последнее, что я вижу, я не пустой. t
Так что это не проблема с прослушивателем autocompleteopen
событий. Есть идеи, что может происходить?
Комментарии:
1. Событие
autocompleteopen
, скорее всего, не запускается приt
удалении. Рассмотрите возможность использования события клавиатуры?
Ответ №1:
Для всех вас, будущих пользователей Google, проблема была в моем объекте автозаполнения. Чтобы определить нулевую длину, вы должны установить minLength
атрибут равным нулю. Смотрите пример ниже.
$("#autocomplete").autocomplete({
minLength: 0,
...
})