JQuery Каждый setInterval Повторять задачу - PullRequest
0 голосов
/ 28 мая 2010

Я использую функцию установленного интервала с jQuery для циклического просмотра списка раз в календаре, чтобы можно было обновить отдельные div. Сначала я поместил этот код на страницу, которая была вызвана через Ajax, но функция никогда не получит новый набор переменных даты. Он просто распознал переменную, которую увидел при первой загрузке страницы.

Затем я добавил код в событие щелчка на главной странице, но затем каждый раз, когда я выбирал новую дату, функция просто запускалась снова, используя первую дату, а затем вторую.

    $date = $_GET['date'];

    jQuery(function() {

    var data = {'9:30','10:30'};

    var date1 = $date;

 $.each(data, function(key, date1) {

   $("#"+key).load(\'cal.php?a=appointment&time=\'+key+\'&date=\'+date1+\'&x=\' + (new Date()).getTime());

  var refreshId = setInterval(function() {
    $("#"+key).load(\'cal.php?a=appointment&time=\'+key+\'&date=\'+date1+\'&x=\' + (new Date()).getTime());
  }, 9000);

 });

1 Ответ

0 голосов
/ 28 мая 2010

Похоже, что вы "перебегали" некоторые строки. Попробуйте этот код:

$date = $_GET['date'];

function Callback(key, data)
{
    $("#"+key).load("cal.php?a=appointment&time=" + key + "&date=" + date1 + "&x=" + new Date().getTime());
}

jQuery(function() {

var data = {'9:30','10:30'};
var date1 = $date;

$.each(data, function(key, date1) {

    Callback(key, data1);

    var refreshId = setInterval(function() {
        Callback(key, data1);
    }, 9000);

});
...