Ajax データのロード中に進行状況バーを表示するにはどうすればよいですか?

Patricia Arquette
リリース: 2024-10-24 06:06:02
オリジナル
634 人が閲覧しました

How to Display a Progress Bar During Ajax Data Loading?

Ajax データの読み込み中に進行状況バーを表示する方法

ドロップダウン ボックスからの値の選択など、ユーザーがトリガーしたイベントを処理する場合は、次を使用してデータを非同期的に取得するのが一般的です。アヤックス。データがフェッチされている間、何かが起こっていることをユーザーに視覚的に示すことは有益です。この記事では、Ajax リクエスト中に進行状況バーを表示する方法について説明します。

Ajax を使用した進行状況バーの実装

Ajax 呼び出しの進行状況を正確に追跡する進行状況バーを作成するには、次の手順に従います。 :

1.フォームの変更をリッスン:

addEventListener('change') を使用して、ドロップダウン ボックスへの変更をリッスンします。

2. Ajax リクエストの開始:

Ajax リクエストを送信して、必要なデータを取得します。

3.進行状況イベントに XMLHttpRequest を使用する:

Ajax オプションで、XMLHttpRequest オブジェクトへのアクセスを提供する xhr 関数を構成します。このオブジェクトを使用すると、進行状況などのさまざまなイベントを監視できます。

4.アップロードとダウンロードの進行状況を監視する:

xhr 関数内に、アップロードとダウンロードの両方の進行状況を追跡するイベント リスナーを追加します。これらのイベントには、onloadstartonprogress、および onloadend が含まれます。

5.進行状況バーの更新:

progress イベントを使用して、イベント オブジェクトのロードされたプロパティと合計プロパティに基づいて進行状況のパーセンテージを計算し、それに応じて進行状況バーを更新します。

これらの手順を示すコード スニペットの例を次に示します。

$.ajax({
    xhr: function() {
        var xhr = new window.XMLHttpRequest();

        // Upload progress
        xhr.upload.addEventListener("progress", function(evt) {
            if (evt.lengthComputable) {
                var percentComplete = evt.loaded / evt.total;
                // Update progress bar...
            }
        }, false);

        // Download progress
        xhr.addEventListener("progress", function(evt) {
            if (evt.lengthComputable) {
                var percentComplete = evt.loaded / evt.total;
                // Update progress bar...
            }
        }, false);

        return xhr;
    },
    type: "POST",
    url: "/yourfile.php",
    data: "...",
    success: function(data) {
        // Handle successful data retrieval...
    }
});
ログイン後にコピー

これらの手法を組み込むことで、Ajax データの読み込み中に進行状況バーを効果的に表示でき、スムーズで有益なユーザー エクスペリエンスを確保できます。

以上がAjax データのロード中に進行状況バーを表示するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!