Здравствуйте. Как в реальном времени в Js/JQuery изменять элементы на сайте?
Например, подсказка в поиске, когда человек начинает вводить название необходимого ему товара, а ему вылезает список законченных слов; Проверка "зарегистрирован ли такой пользователь на сайте": Человек при регистрации вводит логин, а ему в реальном времени показывают, что данный логин уже существует.
Есть ли для этого специальное событие?
И если не сложно, то будьте любезны, угостить небольшим примером реализации.
Спасибо за помощь!
1. Первое делается по событию .on('input', ()=>{}), или keyup, но обязательно сделайте задержку setTimeout перед запросом хотя бы в полсекунды и запускайте заново при каждом событии, удалив перед этим прошлую задержку, тогда не умрет схема) И это только 1 способ.
2. Делается после полного ввода и по событию blur()
Механизм немного другой(в фреймворках, например).
При каждом заполнении или отправке новых данных, приходит ответ.
Изначально(вашими руками) создаётся элемент, показывающий ошибку, просто он невидим, при ответе от сервера он либо заполняет этот элемент с сервера нужным сообщением с ошибкой, либо, в зависимости от ответа, показывает заранее заготовленный текст ошибки и делает элемент видимым.
Andrew, ну т.е. фреймворки работают без события по полю или по свойству, за которым смотри watch или computed (как пример привел Vuejs)? Всё это работает по событийной модели и как раз автору и был дан ответ о том, что следует смотреть на события и идти в эту сторону
ettychel, а я где-то вам сказал что это не так? или вы все сообщения на свой счет принимаете? Мне кажется, что чтобы бравировать такими терминами нужно знать что они значат, хотябы использовать десяток раз, чего автору желаю.
Andrew, извиняюсь, что подумал на свой счет, просто ваш комментарий был сразу под моим и не адресован никому, поэтому из контекста подумал на свой счёт)