Я отправляю запрос jquery $ .post при любом изменении флажка в форме.
Я хочу отложить $ .post на 500 мс, если пользователь быстро установит несколько флажков, чтобы избежать нескольких бесполезных запросов.
Вот мой код, я добавил функцию setTimeout, которая, кажется, работает со всем, кроме этой функции $ .post ...
var delay = (function(){
var timer = 0;
return function(callback, ms){
clearTimeout (timer);
timer = setTimeout(callback, ms);
};
})();
$(document).ready(function() {
$('.checkbox').change(function() {
delay(function(){
$.post("/?page_id=4", $("#selectors").serialize(), function(data){
$('#results').html(data);
});
});
}, 1000 );
});
Есть идеи, почему это не работает?