diff options
Diffstat (limited to 'files/ja/web/api/xmlhttprequest/responsexml')
-rw-r--r-- | files/ja/web/api/xmlhttprequest/responsexml/index.html | 109 |
1 files changed, 109 insertions, 0 deletions
diff --git a/files/ja/web/api/xmlhttprequest/responsexml/index.html b/files/ja/web/api/xmlhttprequest/responsexml/index.html new file mode 100644 index 0000000000..f5f989624a --- /dev/null +++ b/files/ja/web/api/xmlhttprequest/responsexml/index.html @@ -0,0 +1,109 @@ +--- +title: XMLHttpRequest.responseXML +slug: Web/API/XMLHttpRequest/responseXML +tags: + - AJAX + - API + - Fetching XML + - Loading XML + - Property + - Read-only + - Reading XML + - Reference + - Transfer + - XML + - XMLHttpRequest + - download + - responseXML + - upload + - アップロード + - ダウンロード + - プロパティ + - 変換 + - 読み取り専用 +translation_of: Web/API/XMLHttpRequest/responseXML +--- +<div>{{APIRef('XMLHttpRequest')}}</div> + +<p><strong><code>XMLHttpRequest.responseXML</code></strong> は読み取り専用のプロパティで、リクエストによって受け取った HTML または XML を含む {{domxref("Document")}}、またはリクエストが成功しなかった場合、まだ送信されていない場合、データが XML または HTML として解釈できない場合は <code>null</code> を返します。</p> + +<div class="note"> +<p><strong>メモ:</strong> <code>responseXML</code> という名前はこのプロパティの歴史の遺物です。これは HTML および XML の両方で動作します。</p> +</div> + +<p>ふつう、レスポンスは "<code>text/xml</code>" として解釈されます。 {{domxref("XMLHttpRequest.responseType", "responseType")}} が "<code>document</code>" に設定され、リクエストが非同期に行われた場合、レスポンスは代わりに "<code>text/html</code>" として解釈されます。他の型のデータでは、 <a href="/ja/docs/Web/HTTP/Basics_of_HTTP/Data_URIs"><code>data:</code> の URL</a> の場合と同様、 <code>responseXML</code> は <code>null</code> になります。</p> + +<p>サーバーが {{HTTPHeader("Content-Type")}} を "<code>text/xml</code>" とも "<code>application/xml</code>" とも指定しなかった場合、 {{domxref("XMLHttpRequest.overrideMimeType()")}} を使用して強制的に XML として解釈させることができます。</p> + +<p>このプロパティはワーカーでは使用できません。</p> + +<h2 id="Syntax" name="Syntax">構文</h2> + +<pre class="syntaxbox">var <var>data</var> = <var>XMLHttpRequest</var>.responseXML; +</pre> + +<h3 id="Value" name="Value">値</h3> + +<p>{{domxref("XMLHttpRequest")}} を用いて受け取った XML または HTML を解釈した {{domxref("Document")}}、またはデータを受け取っていなかったり、データが XML/HTML でな買ったりした場合は <code>null</code></p> + +<h3 id="Exceptions" name="Exceptions">例外</h3> + +<dl> + <dt><code>InvalidStateError</code></dt> + <dd>{{domxref("XMLHttpRequest.responseType", "responseType")}} が "<code>document</code>" でも空文字列でもない。</dd> +</dl> + +<h2 id="Example" name="Example">例</h2> + +<pre class="brush: js">var xhr = new XMLHttpRequest; +xhr.open('GET', '/server'); + +// responseType を指定する場合は、空文字列または "document" でなければならない +xhr.responseType = 'document'; + +// レスポンスを XML として解釈するよう強制する +xhr.overrideMimeType('text/xml'); + +xhr.onload = function () { + if (xhr.readyState === xhr.DONE && xhr.status === 200) { + console.log(xhr.response, xhr.responseXML); + } +}; + +xhr.send();</pre> + +<h2 id="Specifications" name="Specifications">仕様書</h2> + +<table class="standard-table"> + <thead> + <tr> + <th scope="col">仕様書</th> + <th scope="col">状態</th> + <th scope="col">備考</th> + </tr> + </thead> + <tbody> + <tr> + <td>{{SpecName('XMLHttpRequest', '#the-responsexml-attribute', 'responseXML')}}</td> + <td>{{Spec2('XMLHttpRequest')}}</td> + <td>WHATWG living standard</td> + </tr> + </tbody> +</table> + +<h2 id="Browser_compatibility" name="Browser_compatibility">ブラウザーの対応</h2> + +<div class="hidden">このページの互換性一覧表は構造化データから生成されています。データに協力したいのであれば、 <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> をチェックアウトしてプルリクエストを送信してください。</div> + +<p>{{Compat("api.XMLHttpRequest.responseXML")}}</p> + +<h2 id="See_also" name="See_also">関連情報</h2> + +<ul> + <li>{{domxref("XMLHttpRequest")}}</li> + <li>{{domxref("XMLHttpRequest.response")}}</li> + <li>{{domxref("XMLHttpRequest.responseType")}}</li> + <li><a href="/ja/docs/Web/Guide/Parsing_and_serializing_XML">XML の解釈とシリアライズ</a></li> + <li>XML を解釈して DOM ツリーに格納: {{domxref("DOMParser")}}</li> + <li>DOM ツリーを XML にシリアライズ: {{domxref("XMLSerializer")}} (特に {{domxref("XMLSerializer.serializeToString", "serializeToString()")}} メソッド)</li> +</ul> |