問題タブ [onreadystatechange]

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.

0 投票する
0 に答える
42 参照

javascript - javascript xmlhttp 応答の動作がおかしい

onreadystatechange() は 3 回呼び出されます。2 回目は 'results-div'.innerhtml が 'empty' に設定され、関数の最後の呼び出しで消去されます。また、jquery は ajax ブラウザーの互換性を処理しますか?

'results-div'.innerHTML は最後の呼び出しで消去されました。if(true でなければならない) 'results'.innerHTML = res.response = ''

0 投票する
1 に答える
16424 参照

javascript - Ajax onreadystatechange 関数 readyState

私のページには、Flickr から返された画像の未加工の JSON データを受け取るスクリプトがあります。readyState を使用して、進行中のライブ フィードバックを提供したいと考えています。

私の現在のコードでできることは、readyState が 4 でステータスが 200 であることを確認することです。これが true の場合、生の JSON データをページに追加します。

コード:

ご覧のとおり、受け取った値が resultsContainer div に追加されます。次のように、同じ div にフィードバックを追加しようとしました。

しかし、それは効果がありません。準備完了状態 4 を正常に認識し、3 を認識しないのはなぜでしょうか?

onreadystatechange 関数があることを理解しており、それを使用しようとしましたが、コードがまったく実行されませんでした。つまり、機能しませんでした。

リクエストが発生している間にアクションを実行するにはどうすればよいですか (readyState == 3) ?

編集:

要素 getIms の値は、値が返されて結果コンテナーに追加された場合にのみ処理に変更されます。

0 投票する
5 に答える
5328 参照

javascript - browserify とドキュメントの準備はできていますか?

Browserifyドキュメント準備完了イベントの使用に苦労しています。ドキュメント準備完了イベントが発生した後にのみ利用可能なコンテンツをエクスポートするモジュールを作成するにはどうすればよいですか? そのようなモジュールに依存するにはどうすればよいですか?

私の最初の刺し傷は、module.exports を非同期に設定しようとすることでした-そのままでは失敗しました。これに対する私の次の刺し傷は、モジュールがコールバックを受け取った関数を返し、ドキュメントの準備が整ったときにコールバックを呼び出すことでした。3 回目の試行で promise が返されました。これにより、依存モジュールとその依存関係 (およびそれらの依存関係、タートルまで) もこのパターンを活用する必要があるため、依存モジュールはあまりモジュール化されないように思われます。

Browserify とドキュメント準備完了イベントを使用するための適切なパターンは何ですか?

0 投票する
2 に答える
68 参照

javascript - readyonstatechange 関数を使用してデータを返すにはどうすればよいですか

javascript request xmlhttp を使用してJavaアクションをトリガーしたいので、次の関数を関数呼び出しとして使用し、データを返しましたが、応答を返すことができません。そのような他の内部関数にreturnステートメントを記述します。

呼び出し元関数......

return はどこに記述すればよいですか? また、返されたデータにアクセスするにはどうすればよいですか?

0 投票する
1 に答える
559 参照

javascript - 複数の xhr オンロード

外部ソースから要素を取得するためのこの単純なコードがあります

しかし、コンソールを読むと、10ではなく2または3の結果しか得られません。複数のオンロードを実行できないためだと思います。どうすればこれを修正できますか?

0 投票する
2 に答える
629 参照

ajax - ajaxの準備完了状態は4に達しますが、ステータスは常に200です

私のajaxコードは次のとおりです。

xhr.openで対処したページのコードは次のとおりです。

firefox と chrome で動作しますが、サファリでは常にステータス 200 になります。サファリ 5.1.7 を使用しています。私もresponse.setStatus代わりに使用していますresponse.sendErrorが、機能していません。なぜこれが起こるのか誰か知っていますか?

0 投票する
2 に答える
2175 参照

javascript - EventListeners、onreadystatechange、または AJAX 呼び出し用の jQuery?

OpenWeatherMap APIを呼び出して、天気予報の JSON オブジェクトを取得しています。誰かが zipweather html id 要素に郵便番号を入力して送信または入力を押したときに呼び出される 3 つの異なる JavaScript メソッドを使用しzipWeather()、基本的に郵便番号を呼び出して API アドレスの末尾に貼り付け、その郵便番号のデータを送り返しました。

それらはすべて正常に機能します。それらはすべて華氏に変換された都市名と気温を取得します。

それらはすべて、エラーが発生した場合に関数自体へのエラー ハンドラーでコールバックを使用します。最初のものは、5 秒のタイムアウト コールバックを使用します。

onreadystatechange方法:

の代わりにイベントリスナーonreadystatechange:

そしてもちろんjquery:

最後の 2 つの方法は、jQuery を使用して失敗したときに AJAX 要求を再試行する最良の方法は何ですか? で見つけた可変トリックを使用retryCountします。そのため、ダウンしている場合は API を呼び出し続けません。retryMax

最後に、質問:

  1. これらの方法はすべて、パフォーマンスの点で実質的に同じですか? 書かれている方法に致命的なバグが潜んでいる可能性はありますか?

  2. AJAX を使用する場合、同じ関数に対してエラー ハンドラでコールバックを使用するのが最も適切ですか?

  3. onreadystatechangeJavaScript コード標準は、イベント ハンドラの使用から、jquery$.ajaxおよび$.get関数へと移行していますか?

みんな、ありがとう。長くなってすみません!

0 投票する
4 に答える
187 参照

javascript - データが利用可能な場合に音声の長さのアラートを実行する方法は?

それらのトリックはどれも私にはうまくいきません...

このデータが利用可能な場合 (audio.readyState===4 の場合) に、オーディオの長さのアラートを実行したい。まあ...このデータをできるだけ速く取得する別の魔法がない限り(settimeoutまたはsetIntervalを使用せずに)