Home  >  Article  >  Web Front-end  >  JavaScript gets and parses XML

JavaScript gets and parses XML

高洛峰
高洛峰Original
2016-11-28 15:21:341113browse

XML is widely used in web development, usually as a carrier for data transmission. Generally, when data is passed to the front end, it needs to be parsed with JavaScript before it can be used. Therefore, parsing XML with JavaScript is very common.

There is the following XML file:

<?xml version="1.0" encoding="ISO-8859-1" ?> 
<note>
    <to>duncan</to> 
    <from>John</from> 
    <heading>Reminder</heading> 
    <body>Don&#39;t forget the meeting!</body> 
</note>

can be parsed using the following method:

<html>
<head>
<script type="text/javascript">
function parseXML()
{
    try //Internet Explorer
    {
        xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
    }
    catch(e)
    {
        try //Firefox, Mozilla, Opera, etc.
        {
            xmlDoc=document.implementation.createDocument("","",null);
        }
    catch(e)
    {
        alert(e.message);
        return;
    }
}
xmlDoc.async=false;
xmlDoc.load("note.xml");
document.getElementById("to").innerHTML=
xmlDoc.getElementsByTagName("to")[0].childNodes[0].nodeValue;
document.getElementById("from").innerHTML=
xmlDoc.getElementsByTagName("from")[0].childNodes[0].nodeValue;
document.getElementById("message").innerHTML=
xmlDoc.getElementsByTagName("body")[0].childNodes[0].nodeValue;
</script>
</head>
<body onload="parseXML()">
<h1>www.nowamagic.net</h1>
<p><b>To:</b> <span id="to"></span><br />
<b>From:</b> <span id="from"></span><br />
<b>Message:</b> <span id="message"></span>
</p>
</body>
</html>

xmlDoc.getElementsByTagName("to")[0].childNodes[0].nodeValue How to understand this code?

xmlDoc - XML ​​document created by a parser.

getElementsByTagName("to")[0] - the first 05034471df6398a62d5708f78b78e0ac element.

childNodes[0] - The first child element (text node) of the 05034471df6398a62d5708f78b78e0ac element.

nodeValue - the value of the node (the text itself).

If the xml file is:

<?xml version="1.0" encoding="ISO-8859-1" ?> 
<note>
    <to>asdfsd
        <too>duncan1</too>    
    </to> 
    <too>duncan2</too>
    <from>John</from> 
    <heading>Reminder</heading> 
    <body>Don&#39;t forget the meeting!</body> 
</note>

Read the first 77a74ca8c1d5e9a5096e217b38b998c4: xmlDoc.getElementsByTagName("to")[0].getElementsByTagName("t00")[0].childNodes[0].nodeValue.

Read the second 77a74ca8c1d5e9a5096e217b38b998c4: xmlDoc.getElementsByTagName("too")[0].childNodes[0].nodeValue.


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn