2013-06-18 3 views
1

Я установил таймаут каждые 2 секунды, чтобы перезагрузить контент. Когда я загружаю страницу, она загружает сообщения штрафа через 2 секунды, но потом ничего не делает, если я не обновляю страницу?JQuery ajax chat - Сообщения не перезагружаются каждые 2 секунды?

$(document).ready(function() { 
    $("#login").submit(function(event) { 
     event.preventDefault(); 
     $.post("ajax.php", { login : $("#guest").val() }, function(data) { 
      location.reload(); 
     }); 
    }); 
}); 
setTimeout(function() { 
    reload(); 
}, 2000); 


function reload() { 
    $.post("ajax.php", { loadMessages : "1" }, function(data) { 
     $("#loading").show(); 
     $("#box").html(data); 
     $("#loading").hide(); 
    }); 
} 

Что я сделал не так? Я помню, используя таймауты, это всегда повторялось?

+0

Отправка АЯКС запрос каждые две секунды не отличная идея –

ответ

3

setTimeout запускается только один раз, использовать setInterval, чтобы он постоянно вызывается каждые 2 секунды:

setInterval(function() { 
    reload(); 
}, 2000); 
+0

Да, это, я понял это точно мало через несколько секунд после того, как я разместил вопрос. Я всегда путался между этими двумя. Наконец, я знаю разницу. благодаря! –

+0

Без проблем, рад, что вы его отсортировали :) – MrCode

Смежные вопросы