XML Parser
Most browsers have a built-in XML parser to read and manipulate XML.
The parser converts XML into a JavaScript accessible object
(the XML DOM).
XML Parser
The XML DOM contains methods (functions) to traverse XML trees, access,
insert, and delete nodes.
However, before an XML document can be accessed and manipulated, it must be
loaded into an XML DOM object.
An XML parser reads XML, and converts it into an XML DOM object that can be accessed with JavaScript.
Most browsers have a built-in XML parser.
Load an XML Document
The following JavaScript fragment loads an XML document ("books.xml"):
Example
if (window.XMLHttpRequest)
{
xhttp=new XMLHttpRequest();
}
else // Internet Explorer 5/6
{
xhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xhttp.open("GET","books.xml",false);
xhttp.send("");
xmlDoc=xhttp.responseXML; |
View it » |
Code explained:
- Create an XMLHTTP object
- Open the XMLHTTP object
- Send an XML HTTP request to the server
- Set the response as an XML DOM object
Load an XML String
The following code loads and parses an XML string:
Example
|
if (window.DOMParser)
{
parser=new DOMParser();
xmlDoc=parser.parseFromString(text,"text/xml");
}
else // Internet Explorer
{
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async="false";
xmlDoc.loadXML(text);
} |
View it » |
Note: Internet Explorer uses the loadXML() method to parse an XML string, while other browsers use the DOMParser object.
Access Across Domains
For security reasons, modern browsers do not allow access across domains.
This means, that both the web page and the XML file it tries to load, must be located on the same server.
The examples on W3Schools all open XML files located on the W3Schools domain.
If you want to use the example above on one of your web pages, the XML files you load must be located on your own server.
The XML DOM
In the next chapter of this tutorial, you will learn how to access and retrieve data from the XML document object (the XML DOM).
|