問題タブ [responsetext]
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.
javascript - XMLHttpRequest の responseText 値と等しい変数を設定できないのはなぜですか?
XHR の onreadystatechange 関数内にいる場合は簡単に実行できますがdocument.title = xhr.responseText
、関数が responseText を返すようにすると、XHR の外側のラッパーと等しい変数を設定して応答と等しくすることはできません。これを行う方法はありますか?
私のラッパー:
今、私が次のようなことをしたとします:
それは絶対に完璧に機能します。実際、document.title は bacon.txt への呼び出しの responseText になります。ただし、この方法で実装しようとすると、次のようになります。
そのような運はありません。これがなぜなのか、誰かが明確にすることはできますか?};
jquery - jquery ajaxはhttp URLから応答テキストを取得します
ない:
または:
オブジェクトをください。へのアクセス方法を教えてくださいresponseText
。
javascript - コメット、responseText、メモリ使用量
XHR オブジェクトを破棄せずに XHR オブジェクトの responseText をクリアする方法はありますか?
ライブデータをブラウザーにフィードするために、Web サーバーへの永続的な接続を開いたままにしておく必要があります。問題は、比較的大量のデータ (常に 1 秒あたり数百 K) が通過するため、この接続が少なくとも数分間開いたままにしておく必要があるため、メモリ使用量が大きな問題になることです。私が送り返す JSON は可能な限り小さく砕かれていますが、responseText は非常に急速に大きくなります。
サーバー側アプリの動作方法が原因で、AJAX スタイルのショート ポーリングを使用し、処理が完了したときに XHR オブジェクトを破棄すると、解析にかかる数ミリ秒であっても、大量の重要なデータが失われます。応答し、新しい XHR を作成して送信します。Web サーバーは一度に 1 つの接続しか受け付けないため、重複するリクエストを使用するオプションはありません。(聞かないでください。) したがって、Comet はまさに私が必要としているモデルです。
私がやりたいことは、サーバーから返された各 JSON チャンクを解析し、responseText をクリアして、同じ接続を使い続けることができるようにすることです。ただし、responseText は読み取り専用です。私が見つけた方法で直接空にすることはできません。
ここに欠けている写真の一部はありますか?読み終わったときに responseText を解放するために使用できるトリックを知っている人はいますか? または、サーバーの応答を送信できる別の場所はありますか?
これは実際にはほとんどコードにとらわれない質問であるため、コードは含めません。XHR を生成し、返されたデータを処理する Javascript ルーチンは非常に単純です。
jquery - Django で jQuery.ajax の応答が空になるのはなぜですか
以下のようなajax呼び出しを介して、Djangoビュー呼び出しからJSON応答を返そうとしています:
これが私のDjangoビューです:
奇妙な理由で、アラート ボックスは空白です (ただし、未定義とは表示されません)。興味深いことに、$.post と $.getJSON はまったく同じ URL で正常に機能します。また、予想される JSON 出力がコンソールに表示されます。どんな助けでも大歓迎です!
ajax - サーブレット --x--> Ajax: Ajax コードがサーブレットの応答を受信しない
この非常に単純な例では、ここで何が起こっているのか理解できません。
問題の概要:単純なサーブレットがありますが、ブラウザから URL を発行して手動で操作すると問題なく動作するように見えます。「まあまあ」とは、つまり、サーブレットの応答に書いたものをブラウザの HTML ページで見ることができるということです。
ただし、Ajaxコードを介してまったく同じURLを発行すると、サーブレットはリクエストを正常に処理し、応答を正常に書き出しているように見えます...しかし、Ajaxクライアントコード側で応答が表示されないだけですしたがって、ブラウザの HTML ページにもありません。
さらに、XHR リクエストを同期化すると、ブラウザのエラー コンソールに次の例外が表示されます。
エラー: キャッチされない例外: [例外... "コンポーネントがエラー コードを返しました: 0x80004005 (NS_ERROR_FAILURE) [nsIXMLHttpRequest.send]" nsresult: "0x80004005 (NS_ERROR_FAILURE)" 場所: "JS フレーム :: file:///home/sd/ Desktop/test.html :: callServlet :: 行 35" データ: no]
環境:
ブラウザ: Firefox 3.5.3
サーブレット コンテナー: Tomcat 6.0.20
OS: Linux / Fedora 11
Ajax コード:
サーブレット コード:
編集:
結果を含む: これは、たとえば debugHtmlId 要素の innerHTML の値として表示されるものです。
readyState='1' readyState='1' readyState='2' status='0' responseText='' | readyState='4' status='0' responseText='' |
奇妙な動作: 私の readystatechange ハンドラが再入力されていることにも注意してください! つまり、状態が変化するたびに readyState='...' status='...' responseText='...' トライアドが表示されることを期待していました...
javascript - プロトタイプAjax.Updater応答OKですが、FFに表示されません。Safariでの作業
ここでかなり奇妙な問題が発生しました。
私はAjax.Updaterを介していくつかの簡単なコードを呼び出しています:
これは次のようなコードを取得します:
... 等々
このコードはサーバーの応答としてfirebugコンソールに表示されるので、すべて問題ないはずです。ここではエラーはまったくありません。Safari4で正常に動作します。
Firebugによると、Firefox 3.6は応答があることを知っていますが、私のdiv'load'には何も表示されず、alert(transport.responseText)
も空です。
ここで何が問題になるのかわかりません。
firefox-addon - FireFox のカスタム プロトコルで実行している場合、XMLHttpRequest の responseText は空白ですか?
サーバーからの Web ページをコントロールおよび情報パネルとして表示する FireFox アドオンを作成しています。これらのパネルは通常の URL で記述され、動作しますが、カスタム プロトコル (つまり、myplugin:settings のようなもの) を介してアクセスしようとすると、XSS を行っているかのように、すべての XMLHttpRequest が空白を返します。私はデータが通過していることを知っています - 要求は有効で、サーバーによって受け入れられ、tcpdump はそれらが私のマシンに到達していると言っています。明らかに、これはカスタム プロトコルの実装と関係があるため、関連する部分を次に示します。
jquery - jQuery Ajax responseTextを変数としてindexOfに渡すにはどうすればよいですか?
AjaxリクエストのresponseTextからap要素を追加しようとしています。
追加する前に、responseTextが親のdiv要素のテキストにすでに存在するかどうかを確認します。存在する場合は追加しません。問題は、変数responseTextを使用してindexOf(responseText)を機能させることができないことです。文字列リテラルをindexOfに渡すと、コードが機能します。
これが私のコードです:
提案を事前に感謝します。
html - responseText の改行をクリーンアップする
維持しなければならないページの 1 つで、次のコードを見つけました。
それが何もしないことを期待して、私はそれを
しかし、その後、スクリプトは入力で窒息しました。行末に \r 文字があることが判明したため、上記のコードは明らかに改行をクリーンアップするものでした。
テキストを html ダミー要素に配置することなく、よりクリーンな方法はありますか?
javascript - Ajax: 結果に基づいて responseText のフォント色を変更する
ここのプログラマーは、過去に問題を解決するのに非常に役に立ちました。そのため、Ajax について質問することにしました。おそらく簡単な修正ですが、私は Ajax は初めてです。
私がやりたいのは、結果がフレーズ「NOT FOUND」である場合、responseText のスタイルを赤に変更することです。それ以外の場合、テキストは黒になります。私が使用しているスクリプトは次のとおりです。
HTMLは次のとおりです。