1

コンテナ $('#container') があり、いくつかの要素をコンテナに動的にロードしたいと考えています。subElement.php という php レイアウトがあります。したがって、私のコードは次のようになります。

for(i = 0;i<10;i++){
    $('#container').load('subElement.php?id='+i,function(data){});
}

コンテナーに読み込まれる subElement.php レイアウトは 1 つだけです。どうすればこれをより良い方法で行うことができますか?

4

4 に答える 4

5

理想的には、一度にすべてのデータを取得するように PHP スクリプトを書き直して、必要な.load. そうすることで、ユーザーのネットワーク接続がより速く、より穏やかになります。

ただし、あなたが私たちにあなたが持っているもので作業するように頼んだので:

for(i = 0;i<10;i++){
    $('#container').append($('<span>').load('subElement.php?id='+i));
}

ただし、これらの<span>要素がコードを台無しにする場合は、代わりにExplosion Pills のようなソリューションを使用する必要があります。

于 2012-12-10T18:10:00.620 に答える
3

.loadその都度内容を上書きします。代わりに、おそらく次のように追加する必要があります。

$.get('subElement.php?id=+1', function (data) {
   $("#container").append(data);
});
于 2012-12-10T18:10:03.750 に答える
1

ループのたびに、load()は$('#container') の内容を要求した新しいものに置き換えます。

効率を高めるために最善の方法は、10 個の個別の HTTP リクエストを作成するのではなく、すべてのサブ要素を一度に ajax することです。

何らかの理由で複数の要素の取得をサポートするように API を変更できない場合、別の方法として .get() を使用し、単一の置換を行う前にすべての回答を収集します。

于 2012-12-10T18:12:07.407 に答える
0

$('#container').append('some content')に追加して使用できます#container

于 2012-12-10T18:10:04.610 に答える