Событие keyup, отправка данных
Здравствуйте!
Проблема заключается в следующем, событие keyup отрабатывает при каждом отжатии кнопки при установленом фокусе на форму. И получается, что когда происходит отжатие кнопки, то у меня формируется запрос и отправляется ajax'ом, я сделал таймаут, но ничего хорошего из этого не вышло, запрос откладывается на указанное время а после отправляется ровно столько раз, сколько была нажата кнопка во время нахождения фокуса на форме. Как в таком случае избежать ненужных ajax запросов? $("input[name=myInput]").keyup(function(){ setTimeout(function(){ $('#myForm').ajaxSubmit(options); }, 2000 ); }); |
вешать на событие blur (уход с объекта)
|
Форма о которой идет речь является последней в списке всех форм, а так же кнопки "отправить" нет (что говорит о том, что пользователь оставит крусор в этой форме), поэтому у меня и возникла такая задача отследить момент и отправить форму, только на деле происходит отправок ровно столько сколько раз сработало событие keyup
|
var timerHandle = null; $("input[name=myInput]").keyup(function(){ if ( timerHandle != null ) { clearTimeout( timerHandle ); } timerHandle = setTimeout(function(){ $('#myForm').ajaxSubmit(options); }, 2000 ); }); |
спасибо!
|
Часовой пояс GMT +3, время: 22:25. |