|
События формы
Коллеги доброго времени суток, проблема следующая:
На странице есть input в который пользователь вводит число, какое нибудь не важно. Далее скрипт на сервер отправляет данные. Теперь собственно вопрос: я ловлю событие input'а : document.addEventListener('input', function(e) { e = e || window.e; var target = e.target || window.target; while (target != this) { if (target.tagName != 'INPUT') return; if (target.hasAttribute('data-action')) { if (target.getAttribute('data-action') == 'refresh') { console.log(target.value); } else return; } else return; target = target.parentNode; } С тем что происходит внутри события все понятно, надеюсь. НО!!! как сделать, что бы в консоле выводилось не каждое value, которое выводит пользователь а последнее. Т.е. я ввожу например 50, сначала в консоле выводится 5 а потом 50, а как сделать что бы выводило сразу 50. Выводить число нужно с задержкой, т.е. пользователь что то ввел, ему дается 2 секунды, а потом выводится в консоль его число. Примерно так. |
e - событие
target - записали в переменную можно без этих строк, суть не в них |
Вопрос, в том, как выводить в консоль, только одно число а не каждое, которое ввел пользователь. Т.к. input (событие) срабатывает при каждом изменении поля input, нужно взять только последнее число, через 2 секунды после
|
заменить событие например на
el.addEventListener('blur', function(e) { // потеря фокуса инпутом |
Rise, а в чем бред то??????? с точки зрения кроссбраузерности и делегирования в чем проблема то, везде работает!!!!!
Есть проблема и я задал вопрос, если не поняли вопроса так и скажите... |
Цитата:
document.addEventListener('focusout', function(e) { // потеря фокуса инпутом |
А говорить про бред это детский сад, форум для того и создан, одни просят помощи, а другие если могут помогают, по мойму все нормально
|
Цитата:
|
j0hnik, в целом работает, но работает когда мышкой кликаешь в другое место, суть та же если рядом поставить кнопку.
А нужно что бы пользователь ввел какое то число, прошло 2 секунды а это число вывелось в консоль ну или в блок, какой нибудь, автоматом. |
Цитата:
|
Часовой пояс GMT +3, время: 03:50. |
|