0

個々の div を更新できるように、jQuery で set interval 関数を使用してカレンダーの時刻のリストをループしています。最初に、このコードを Ajax 経由で呼び出されたページに配置しましたが、関数は新しい日付変数セットを受け取ることはありませんでした。ページが最初にロードされたときに見た変数を認識するだけです。

次に、メイン ページのクリック イベントにコードを追加しましたが、新しい日付を選択するたびに、最初の日付と 2 番目の日付を使用して関数が再度実行されました。

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

 });
4

1 に答える 1

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

});
于 2010-05-28T08:23:06.620 に答える