2010-05-28 81 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