Окно поиска ajax отправляет последний ввод, когда ввод удаляется очень быстро
Итак, у меня есть живой поиск ajax, который отлично работал, когда я тестировал его локально, но знаю, что он у меня "живой", он отправит последний обнаруженный вход, когда вход будет удален очень быстро.
(Под очень быстро я подразумеваю нажатие клавиши удаления, удерживания нажатой много раз или даже суммирования Ctrl+ A и удаление вызовет ошибку.)
Он делает это последовательно, я думаю, что функция срабатывает при нажатии клавиши удаления, однако изменение функции с keyup на нажатие клавиши не работает и удаляет мою анимацию.
консоль говорит мне, что поле поиска пусто по длине и значению.
РЕДАКТИРОВАТЬ: я не мог решить проблему с ключом удаления, отправляющим последний ввод на сервер, поэтому я сделал косметическое решение, используя.show() и.hide()
решение в ответах
1 ответ
Как указано в правке, это косметическое решение
я попытался поместить setTimeouts в различных местах функции безрезультатно
это решение использует два оператора if для отслеживания значения searchbox и соответственно скрытия / показа resultbox
if($('#searchbox').val() === ''){
$('#resultbox').hide();
}
if($('#searchbox').val() != ''){
$('#resultbox').show();
}