Окно поиска ajax отправляет последний ввод, когда ввод удаляется очень быстро

Итак, у меня есть живой поиск ajax, который отлично работал, когда я тестировал его локально, но знаю, что он у меня "живой", он отправит последний обнаруженный вход, когда вход будет удален очень быстро.

(Под очень быстро я подразумеваю нажатие клавиши удаления, удерживания нажатой много раз или даже суммирования Ctrl+ A и удаление вызовет ошибку.)

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

консоль говорит мне, что поле поиска пусто по длине и значению.

РЕДАКТИРОВАТЬ: я не мог решить проблему с ключом удаления, отправляющим последний ввод на сервер, поэтому я сделал косметическое решение, используя.show() и.hide()

решение в ответах

1 ответ

Как указано в правке, это косметическое решение

я попытался поместить setTimeouts в различных местах функции безрезультатно

это решение использует два оператора if для отслеживания значения searchbox и соответственно скрытия / показа resultbox

if($('#searchbox').val() === ''){
    $('#resultbox').hide();
}

if($('#searchbox').val() != ''){
    $('#resultbox').show();
}
Другие вопросы по тегам