XMLHttpRequest.responseXML
The XMLHttpRequest.responseXML
read-only property returns a Document
containing the HTML or XML retrieved by the request; or null
if the request was unsuccessful, has not yet been sent, or if the data can't be parsed as XML or HTML.
Note: The name responseXML
is an artifact of this property's history; it works for both HTML and XML.
Usually, the response is parsed as "text/xml
". If the responseType
is set to "document
" and the request was made asynchronously, instead the response is parsed as "text/html
". responseXML
is null
for any other types of data, as well as for data:
URLs.
If the server doesn't specify the Content-Type
as "text/xml
" or "application/xml
", you can use XMLHttpRequest.overrideMimeType()
to parse it as XML anyway.
This property isn't available to workers.
Syntax
var data = XMLHttpRequest.responseXML;
Value
A Document
from parsing the XML or HTML received using XMLHttpRequest
, or null
if no data was received or if the data is not XML/HTML.
Exceptions
InvalidStateError
-
The
responseType
isn't either "document
" or an empty string.
Example
var xhr = new XMLHttpRequest; xhr.open('GET', '/server'); // If specified, responseType must be empty string or "document" xhr.responseType = 'document'; // Force the response to be parsed as XML xhr.overrideMimeType('text/xml'); xhr.onload = function () { if (xhr.readyState === xhr.DONE && xhr.status === 200) { console.log(xhr.response, xhr.responseXML); } }; xhr.send();
Specifications
Browser compatibility
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
responseXML |
1 |
12 |
1
Before Firefox 51, an error parsing the received data added a
<parsererror> node to the top of the Document and then returned the Document in whatever state it happens to be in. This was inconsistent with the specification. Starting with Firefox 51, this scenario now correctly returns null as per the spec. |
7 |
≤12.1 |
≤4 |
≤37 |
18 |
4
Before Firefox 51, an error parsing the received data added a
<parsererror> node to the top of the Document and then returned the Document in whatever state it happens to be in. This was inconsistent with the specification. Starting with Firefox 51, this scenario now correctly returns null as per the spec. |
≤12.1 |
≤3 |
1.0 |
See also
XMLHttpRequest
XMLHttpRequest.response
XMLHttpRequest.responseType
- Parsing and serializing XML
- Parsing XML into a DOM tree:
DOMParser
- Serializing a DOM tree into XML:
XMLSerializer
(specifically, theserializeToString()
method)
© 2005–2021 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/responseXML