-3

データベースがヒットするたびにdivブロックをリロードする方法は? setInterval 関数を使用してみました。データベース テーブルが更新または挿入されたときにブロックをリロードする必要があります。

4

3 に答える 3

0

ここで純粋にイベントベースの設定を行うことは(AFAIK )不可能です。ページが最初に読み込まれると、それ以上の動的読み込みをクライアント側で設定する必要があり、サーバー自体がこの動作をトリガーすることはできません。

唯一の解決策は、指定された間隔でサーバーをポーリングし、JavaScript(jQueryの支援の有無にかかわらず)を使用してデータをリロードすることです。

setInterval当然の選択でしょう。あなたはすでにこれを使用したと言いますが、コードの例を挙げていないので、なぜこれが機能しないのかは明らかではありません。

たとえば、(で)入力しようとしているコンテンツを生成するページがサーバー上にPHP呼び出された場合、次のようにコンテナを動的に更新できます(注:簡潔にするためにjQueryを想定しています)data_reload.phpdivHTML

// Function that does the actual work of updating the container
function updateContent(jContainer, htmlSource) {
    $.get(htmlSource, function(html) {
        jContainer.html(html);
    });
}

setInterval(function() {
    updateContent($("#data"), 'data_reload.php');
}, 3000); // update every 3 seconds
于 2013-03-01T05:17:16.587 に答える
0

javascriptの関数を使用し、jqueryを使用してまたは一定の時間間隔でsetIntervaldivをリロードしますgetload

サーバーページでdivのコンテンツを指定し、getloadを使用してそこからコンテンツを取得する必要がありますmethod

于 2013-03-01T05:06:28.720 に答える
0

可能な限り最良のオプションは、JQueryを使用することです。

  1. データベースが更新/変更されるたびに関数がアクティブになるように、jqueryで関数を作成してみてください。
  2. 次に、そのIDを使用してdivブロックを呼び出します。そして、show /hiddenを使用してユーザーに表示および非表示にします。

次回、質問を投稿するときに、試したコードを投稿してみてください。デバッグが簡単になります。

于 2013-03-01T05:08:13.877 に答える