問題タブ [ajax-polling]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 結果が同じページにある PHP ポーリング
CSS-Tricks.com によって投稿された、PHP と MySQL データベースを使用して投票を作成する方法を説明した素晴らしい記事がありました。私はこれに従い、自分のために素敵な投票を作成しました。コメントで、AJAX を使用して、完全に別のページではなく同じページに結果を表示することに言及していることに気付きました。
PHP Poll の結果を同じページに表示する最良の方法は何ですか?
アップデート:
答えは実にシンプルです。実際、私の意見では、AJAX を使用しない CSS-Tricks のポーリングは、データベースが必要なため、より困難です。これはそうではありません!
PHP と AJAX を使用して投票を作成するための完全なチュートリアルは、次の場所で参照できます。
http://www.w3schools.com/php/php_ajax_poll.asp
3 つ以上のポーリング オプション用に配列を設定する方法を明確にしたかっただけです。まず、「データベース」(つまり、MySql ではなくテキスト ファイル) を取得します。
次に、データを配列に入れます。
「データベース」にデータを格納する
次に、結果を出力します。ファイル構造と AJAX スクリプトについては、完全なチュートリアルを参照してください。
jsf - DB が更新されても、データベースの p:poll は常に同じ値を返します
JSF ページに表示したい GPS 情報をアップロードし続けるデータベースがあります。これを定期的に行うために、PrimeFaces の poll 要素を使用していますが、データベースで更新されているにもかかわらず、クエリは同じ値を返し続けます。私はすでに @SessionScope と @RequestScope でそれを試しましたが、これは問題の場所ではないようです。どんな助けでも大歓迎です!以下は、タスクに使用しているコードです。
意見:
バッキング Bean:
更新:解決しました。最初から私のせいで、Entity Manager Factory と Entity Manager オブジェクトを閉じるのを忘れていたため、常に同じクエリを取得し続けていました。言及された両方のオブジェクトを閉じると、PrimefacesやJSFとは関係のない問題が解決しました-申し訳ありません。面白いことに、Stand Alone Test Unit を実行したときに、更新されたデータを取得できたにもかかわらず、参照されたオブジェクトも閉じるのを忘れていました。私を助けてくれた皆さん、ありがとう:)
ruby-on-rails - ポーリング リクエストの順序付け
変更のポーリングに関する Rails Casts エピソード #228 をフォローしようとしています。コメントの代わりに通知に使用していることを除いて、私は基本的にスクリーンキャストを一言一句フォローしています。唯一の違いは、彼が「コメント」という単語を使用するたびに、「user_notification」という単語を使用することです。彼が「コメント」という言葉を使うたびに、私は「user_notifications」を使います。また、スクリーンキャストのコメントは記事に属しているのに対し、私のアプリの user_notifications はユーザーに属しているため、「記事」という単語を「現在のユーザー」に置き換えます。最新の通知が下部に表示されることを除いて、user_notifications を正常にセットアップできました。show.html.erb ファイルの user_notifications に .order を追加して、これを修正しました (以下を参照)。問題は、JavaScript が「id > params[:after]」を使用してすべての user_notifications をポーリングするように指示しているため (以下のコントローラーのインデックス アクションを参照)、順序が変更されて以来、より高い ID で user_notifications を再追加することです。反転しました。これを修正するにはどうすればよいですか?
これが私のコードです:
user_notifications.js.coffee
show.html.erb
index.js.erb
user_notifications_controller:
javascript - 単純な ajax/jquery - 数値を置き換えようとしています
スパン クラス内のコンテンツを jquery に置き換えようとしています。最初の行が機能するため、jquery ファイルが読み取られていることがわかります。基本的に、jquery の最初の行は、通知のリストに新しい通知を追加します。クエリの 2 行目は、サイトの既存の番号を新しい @unseen_notifications.count に置き換える必要があります。jquery ファイルの 2 行目が機能していません。どうすれば修正できますか?
jquery:
html:
push-notification - チャネルへのデータの公開に関する CometD の問題
私は cometd を初めて使用します。メッセージをサーバーに送信し、cometd を使用してブラウザーでメッセージを取得することを計画しました。メッセージを送信すると、サーバーに正常に送信されますが、ブラウザーで取得できませんでした。
しかし、これは機能していません
ログ:
1
アプリケーション.js
javascript - $http.get() で新しいデータが得られなかった場合、AngularJS がダイジェスト ループの実行をスキップするようにします。
現在、サーバーをポーリングして新しいデータを確認し、それに応じて AngularJS アプリでモデルを更新しています。彼は大まかに私がやっていることです:
これは問題なく動作しますが、ほとんどのリクエストは新しいデータやデータの変更にはなりませんが、$http サービスは実際には認識もケアもせず、ダイジェスト サイクルをトリガーします。これは不要だと思います (ダイジェスト サイクルはアプリで最も重い操作の 1 つであるため)。$http を引き続き使用できる方法はありますが、何も変更されていない場合、何らかの方法でダイジェストをスキップできますか?
解決策の 1 つは、$http ではなく jQuery を代わりに使用し、$apply を呼び出してモデルが変更されたことを Angular に知らせることです。
これは機能しているように見えますが、良いアイデアかどうかはわかりません。可能であれば、純粋な Angular を引き続き使用したいと思います。
上記のアプローチを改善するための提案や、より洗練されたソリューションを完全に提案した人はいますか?
PS $timeout の代わりに setInterval を使用している理由は、$timeout がこの場合不要なダイジェスト サイクルをトリガーし、「問題」に追加されるだけだからです。
primefaces - PF 投票がモーダル ダイアログに更新されない
増加するカウンター値をモーダル ダイアログに表示するために、primefaces poll を使用しています。しかし、うまくいきません。メインフォームに同じコードを配置したところ、非常にうまく機能しました。しかし、カウンター値をモーダル ダイアログに表示する必要があります。
jsf - PF Poll でリストのサイズをリアルタイムで更新する
私の JEE アプリケーションには、電子メール リストの抽出プロセスがあります。リストにメールを追加した後にインクリメントされるカウンターを表示する必要があります。アイデアは、このリストのサイズを表示し、primeface poll を使用して 1 秒ごとに更新することです。私はこのように処理しました:
EmailsExtraction.xhtml:
ManagedBean.java:
ただし、カウント値は更新されません。