Movatterモバイル変換


[0]ホーム

URL:


  1. 開発者向けのウェブ技術
  2. Web API
  3. XMLHttpRequest API
  4. XMLHttpRequest における HTML の扱い

このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docsコミュニティーについてもっと知り、仲間になるにはこちらから。

View in EnglishAlways switch to English

XMLHttpRequest における HTML の扱い

Baseline Widely available *

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨2015年7月⁩.

* Some parts of this feature may have varying levels of support.

W3C のXMLHttpRequest 仕様書では、もともとXML の解釈しか対応していなかったXMLHttpRequestHTML の解釈を追加しています。この機能によって、ウェブアプリはXMLHttpRequest を使って HTML を解釈済のDOM として取得することができます。

一般的なXMLHttpRequest の使い方についての概要は、XMLHttpRequest の利用をお読みください。

制限

同期的なXMLHttpRequest の利用を避けるために、 HTML 対応は同期モードでは利用できません。また、 HTML 対応はresponseType プロパティが"document" に設定されている時にのみ有効です。この制限によって、古いコードがXMLHttpRequest を使ってresponseTexttext/html であるリソースを既定のモードで受け取るときに、無用に HTML を解釈する時間を浪費することを防ぎます。また、この制限によって HTTP のエラーページ (ふつうはtext/html の応答本文を持つ) の際にresponseXMLnull と想定する古いコードで問題が発生することを防ぐこともできます。

使用方法

XMLHttpRequest を使って HTML リソースを DOM として取得することは、XMLHttpRequest を使って XML リソースを DOM として取得するのと似ていますが、同期モードを使用することはできず、XMLHttpRequest オブジェクトのopen() を呼び出した後、send() を呼び出す前に、responseType プロパティに文字列"document" 代入して、明示的に文書を要求する必要があるという点が異なります。

js
const xhr = new XMLHttpRequest();xhr.onload = () => {  console.log(xhr.responseXML.title);};xhr.open("GET", "file.html");xhr.responseType = "document";xhr.send();

文字エンコーディング

HTTP のContent-Type ヘッダーで文字エンコーディングが宣言されている場合は、そのエンコーディングが使用されます。そうでない場合、もしバイトオーダーマークがある場合は、そのバイトオーダーマークが示すエンコーディングを使用します。そうでない場合、もしファイルの先頭 1024 バイト以内にエンコーディングを宣言する<meta> 要素がある場合は、そのエンコーディングが使用されます。それもない場合、ファイルは UTF-8 としてデコードされます。

仕様書

Specification
XMLHttpRequest
# interface-xmlhttprequest

ブラウザーの互換性

関連情報

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp