2010-05-28 80 views
0

我正在使用jQuery的设置间隔函数来循环日历上的时间列表,以便可以刷新各个div。首先,我将这段代码放在通过Ajax调用的页面上,但函数永远不会收到新的日期变量集合。它只会识别页面第一次加载时看到的变量。JQuery每个setInterval重复问题

然后我将代码添加到主页上的单击事件中,但每次我选择一个新日期时,函数都会再次运行,使用第一个日期,然后是第二个日期。

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

}); 
+0

行之前的4个空格格式为代码。 'ctr-k'作为选择。 – 2010-10-10 19:51:02

回答

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

}); 
+0

我应该把它清理得更多一点。代码是在一个用单括号括起来的php echo语句中。 – RogeR 2010-05-28 09:02:40

+0

php echo中的代码是你发布的代码的一部分,或者它是整个代码?你能发布你所有的包括php代码吗? – Kamarey 2010-05-28 14:04:38