0

次のようなphpを使用して、動的な名前のdivを作成しています。

echo "<div class=\"".$row['country']."\">"

したがって、最初に次のような一連の div を作成します ...

<div class="America">
   //stuff goes in here
</div>

<div class="Germany">
   //stuff goes in here
</div>

<div class="Singapore">
   //stuff goes in here
</div>

しかし、"Germany" div が既に作成された後のコードで、別のテーブルに対して別の mysql クエリを作成し、"Germany" クラスにアクセスしてコンテンツを追加したいと考えています。それは次のようになります...

 <div class="Germany">
    <p> Germany has x number of people </p>
    <p> The most popular car in Germany is x </p>
</div>

Jquery には append() 関数があることを知っています。すでに作成されている div にアクセスしてそれに何かを追加できる PHP に似たようなものはありますか?

注: これらはすべて、ページの読み込み時にすべてのコンテンツを読み込む 1 つの php ファイルにあります。

4

5 に答える 5

2

それはできます。出力バッファリングを使用して、すべての出力をキャプチャできます。その後、HTML DOM パーサーを使用してその出力を変更できます。その後、ロットをフラッシュできます。

ただし、これは一度しか機能せず、スクリプトの速度が大幅に低下します。やらないでください、悪いデザインのにおいがします。

于 2012-11-29T08:58:53.383 に答える
1

あなたの最良の選択肢は、次のような複数の変数を作成することです

$css['America'];
$css['Germany'];
$general_output;

など、サイトの構築中に、必要な変数に情報を追加するだけです。

ページの最後まで印刷したら、正しい順序で印刷して完了です。

于 2012-11-29T08:57:11.303 に答える
0

のような配列を作成できると思います

$div["Amereica"] = "America"

そして将来、この配列に値を追加できます。例えば。

$div["Amereica"] .= 'text to append';

最後に、implode 関数を使用するか、他の配列関数を使用して、最終的な html を作成できます。

于 2012-11-29T09:05:34.977 に答える
0

簡単な答えはノーです。

PHP によって生成された HTML コードを変更することはできません。そのコードは既にブラウザーに送信されており、PHP はサーバー側で動作するためです。

複雑な答えの 1 つは @GolezTrol の答えです。

于 2012-11-29T09:09:30.370 に答える
0

その要素に再度アクセスする必要がある場合は、 DOM 関数またはphpQueryを探している可能性があります。

于 2012-11-29T08:58:10.123 に答える