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