Подтвердить что ты не робот

JQuery/Ajax вызов с таймером

Мне было интересно, может ли кто-нибудь помочь мне. У меня есть страница php, которая выделяет строки из базы данных. Я хочу называть его через jquery/ajax каждые 30 секунд. Но я также хочу, чтобы иметь возможность вызвать страницу в любое время, чтобы, если я добавлю запись через форму, как только форма отправляется, я хочу, чтобы страница через вызываемый в ajax обновляла результаты сразу. Может ли кто-нибудь указать мне в правильном направлении или предоставить базовый код, чтобы я мог понять это? Еще очень новичок в jquery/ajax.

4b9b3361

Ответ 1

Если вы хотите установить что-то на таймер, вы можете использовать методы JavaScript setTimeout или setInterval:

setTimeout ( expression, timeout );
setInterval ( expression, interval );

Где expression - это функция, а timeout и interval - целые числа в миллисекундах. setTimeout запускает таймер один раз и запускает expression один раз, тогда как setInterval будет запускать expression каждый раз, когда проходит interval.

Итак, в вашем случае это будет работать примерно так:

setInterval(function() {
    //call $.ajax here
}, 5000); //5 seconds

Что касается Ajax, см. jQuery ajax() method. Если вы запустите интервал, нет ничего, что помешает вам вызвать тот же ajax() из других мест вашего кода.