2011-07-31 4 views
0

をリフレッシュ:jQueryの私は良いリソースまたは以下を実行する方法上の任意のアイデアを見つけるのは非常に苦労しています複数の変数

Using jquery get some data 
  1. 使用jqueryのをいくつかのデータをフェッチします。次に、データがどのような構文になっているかを確認します。ステップ2に進みます。
  2. jqueryを使用して、そのデータをhtmlページの複数の変数とタグに割り当てます。私は1つのタグを置き換える方法を知っています。しかし、私は複数のdiv、タグ、IDをリフレッシュしたいです。手順3に進みます。
  3. しばらくしてから手順1に戻ります。

私は友人のGOOGLEを試しましたが、私が探しているページを見つけることができません。私はここでいくつかのコードを本当に感謝しますが、チュートリアルへのリンクはあまりにも悪くないでしょう。

答えて

4

1)$.ajax()は良いアイデアだと思い、JSON形式でデータをフェッチするためにそれを使用します:

$.ajax({ 
    url: url, 
    dataType: 'json', 
    data: data, 
    success: callback //Assign data and stuff here 
}); 

2)これは新しい機能としてsuccessのパラメータで行います。 success: function() {}

success: function() { 
    $('div#1').html('foo'); 
    $('h1#1').html('woo'); 
} 

3)間隔でのご$.ajax() -callラップ:あなたがしているとして、それを次の方法をやってみ

var refresh = setInterval(function() 
$.ajax({ 
     url: url, 
     dataType: 'json', 
     data: data, 
     success: callback //Assign data and stuff here 
    }); 
}, 60000); 

編集(以下のコメントへの応答) function()をコールバックとして使用しないでください:

function() { 
    $.ajax({ 
     url: "/admin/ajax/all_data.php", 
     dataType: 'json', 
     data: data, 
     success: function(data) { 
      $("#testdiv1").html(data.testdiv1); 
      //$("#testdiv2").html(data.testdiv2); 
      //$("#testdiv3").html(data.testdiv3); 
     } 
    }); 
}), 2000); 

これがうまくいけば教えてください あなたのために。

+0

私のリストのpunctionを使用すると、コードボックスが無効になりました。 "/admin/ajax/all_data.php"、 のdataType: 'JSON'、 データ:データ、 成功:このdoesntのは...機能(){$アヤックス({ URLを働いているように見える – ninetwozero

+0

FIXED $( "#testdiv1").html(data.testdiv1); //$("#testdiv2").html(data.testdiv2); // $( "#testdiv3")。html(data.testdiv3); });}、2000); – Vish

+0

@ user658911上記のポストを更新して、コールバックの作成方法を説明しました。 – ninetwozero

1

1および$.get,$.post,$.loadおよび$.getJSONなどの関連する上位レベルのラッパーを参照してください。

2 - サーバーがJSONをクライアントに送信し、クライアントがその使用方法を理解している場合、これは簡単です。例:

// json from server 
{ "newsDiv" : "some html", "imagesDiv", "some html" } 

// assuming it is stored in the variable 'data' 
$("#newsDiv").html(data.newsDiv); 
$("#imagesDiv").html(data.imagesDiv"); 

3 - setIntervalあなたの友人です。

0

jquery 'load'関数hereをチェックしてください。これにより、サーバーからデータをロードし、一致したhtml要素に配置することができます。非常にきれいでシンプル。その後 は、タイマーhere

私はより多くのあなたが必要とするものを見ることができないの実装方法を見て

関連する問題