JQuery每个setInterval重复问题

时间:2010-05-28 07:30:51

标签: javascript jquery each setinterval

我正在使用带有jQuery的set interval函数循环遍历日历上的一系列时间,以便可以刷新各个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 :(得分:0)

看起来你的'过度逃脱'了一些字符串。试试这段代码:

$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);

});