Используя событие ввода , вы можете запускать свой код каждый раз, когда нажимается клавиша (или происходит какое-либо другое изменение) в поле ввода.
Пример кода по ссылке выше:
const input = document.querySelector('input');
const log = document.getElementById('values');
input.addEventListener('input', updateValue);
function updateValue(e) {
log.textContent = e.target.value;
}
Обратите внимание, что с помощью этого вы будете делать один AJAX-вызов на нажатие клавиши. Поскольку это может спамить сервер слишком большим количеством бесполезных запросов, вам может потребоваться встроить некоторые функции кэширования или ограничения скорости (например, только выборку данных, если в течение секунды не было нажато ни одной клавиши).