XMLHttpRequest.responseXML

Свойство XMLHttpRequest.responseXML это доступное только для чтения значение, которое содержит Document содержащий HTML или XML полученный запросом, или null в случае, если запрос не был успешен, ещё не был отправлен или полученные данные не могут быть корректно обработаны как XML или HTML. Ответ обрабатывается так, как если бы это был "text/xml". В случае, если responseType установлен как "document" и запрос был осуществлён асинхронно, ответ обрабатывается как "text/html". responseXML содержит null для любых других типов данных так же, как и для data: URLs.

Примечание: Название responseXML это наследие истории этого свойства, на самом деле оно работает как для HTML, так и для XML.

Если сервер не определяет заголовок Content-Type как "text/xml" или "application/xml", вы в любом случае можете использовать XMLHttpRequest.overrideMimeType() (en-US) чтобы заставить XMLHttpRequest обрабатывать ответ как XML.

Синтаксис

var data = XMLHttpRequest.responseXML;

Значение

Document содержащий древовидный результат обработки XML или HTML, полученных с использованием XMLHttpRequest, или null, если данные не были получены или содержат другой тип данных.

Исключения

InvalidStateError

responseType не является "document" или пустой строкой (каждый из которых указывает, что принятые данные это XML или HTML).

Пример

js
var xhr = new XMLHttpRequest();
xhr.open("GET", "/server", true);

// Значение responseType, если указано, должно быть пустой строкой или "document"
xhr.responseType = "document";

// overrideMimeType() может быть использован, чтобы заставить ответ обрабатываться как XML
xhr.overrideMimeType("text/xml");

xhr.onload = function () {
  if (xhr.readyState === xhr.DONE) {
    if (xhr.status === 200) {
      console.log(xhr.response);
      console.log(xhr.responseXML);
    }
  }
};

xhr.send(null);

Спецификации

Specification
XMLHttpRequest Standard
# the-responsexml-attribute

Совместимость с браузерами

BCD tables only load in the browser

Смотрите также