Подождите, пока пользователь перестанет печатать

I есть пользователи, делающие вызов ajax во время набора текста. Проблема в том, что он делает вызов для каждой набираемой буквы, поэтому я установил время ожидания следующим образом:

$(input).live('keyup', function(e){

setTimeout(function(){ 

var xx = $(input).val();
doSearch(xx); 

}, 400); 

}); 

Он ждет 400 мс, но затем выполняется для каждого нажатия клавиши. Как я могу изменить это на сделать вызов ajax только «один раз» примерно через 400 мс после последней набранной буквы?

(в прошлом я использовал «задержку», но это вообще не работает с моим скриптом...)

9
задан Youss 12 April 2012 в 13:01
поделиться