多くの Web アプリケーションでは、コレクションを反復処理して要素ごとに Ajax リクエストを発行する必要が生じることがよくあります。ブラウザのフリーズを避けるために非同期リクエストを活用するのは魅力的ですが、これらのリクエストを効果的に管理することで、サーバーの過負荷やその他の潜在的な問題を防ぐことができます。
jQuery バージョン 1.5 以降の場合、$. ajaxQueue() プラグインは簡単な解決策を提供します。このプラグインは、$.Deferred、.queue()、および $.ajax() 関数を利用して Ajax リクエストを調整し、リクエストの完了時に解決される Promise を返します。
jQuery の場合1.4 ユーザーの場合は、空のオブジェクトのアニメーション キューを使用して「キュー」を作成する別のアプローチもあります。この手法により、Ajax リクエストが制御された方法で実行され、キューがまだ実行されていない場合は最初のリクエストが自動的に開始されます。
次のコード スニペットは、Ajax の実装方法を示しています。 $.ajaxQueue() プラグインを使用したキューイング。要素のリストを反復処理し、Ajax リクエストを介して各項目をターゲット リストにコピーします。
$("#items li").each(function(idx) { $.ajaxQueue({ url: '/echo/html/', data: { html: "[" idx "] " $(this).html() }, type: 'POST', success: function(data) { $("#output").append($("
これらのアプローチのいずれかを採用することで、開発者は Ajax リクエストのシーケンスを効果的に管理し、秩序ある実行を保証し、潜在的なサーバー側の問題を回避できます。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3