XMLDOM
La base de XML es el Modelo de Objetos de Documento (DOM). Un documento DOM es un conjunto de nodos o bloques de información organizados jerárquicamente. A través de esta estructura jerárquica, los desarrolladores pueden encontrar información específica en el árbol de navegación.
DOM (Document Object Model) define métodos estándar para acceder y manipular documentos.
XMLDOM
XML DOM (modelo de objetos de documento XML) define un método estándar para acceder y manipular documentos XML.
XML DOM ve los documentos XML como una estructura de árbol.
Se puede acceder a todos los elementos a través del árbol DOM. Se pueden modificar o eliminar sus contenidos y crear nuevos elementos. Los elementos, su texto y sus atributos se consideran nodos.
Puede obtener más información sobre XML DOM en nuestro tutorial de XML DOM.
dominio HTML
HTML DOM define métodos estándar para acceder y manipular documentos HTML.
Se puede acceder a todos los elementos HTML a través de HTML DOM.
Puede obtener más información sobre HTML DOM en nuestro tutorial HTML DOM. .
Cargar un archivo XML: ejemplo en varios navegadores
El siguiente ejemplo analiza un documento XML ("note.xml") en un objeto DOM XML y luego extrae información a través de JavaScript:
Ejemplo
<html><body><h1>Nota interna de W3Cschools</h1><div><b>Para:</b> <span id="to"></span><br /><b>De:< /b> <span id="from"></span><br /><b>Mensaje:</b> <span id="message"></span></div><script>if (ventana .XMLHttpRequest){// código para IE7+, Firefox, Chrome, Opera, Safarixmlhttp=new XMLHttpRequest();}else{// código para IE6, IE5xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");}xmlhttp.open("GET","note.xml",false);xmlhttp.send();xmlDoc=xmlhttp.responseXM L;document.getElementById("a").innerHTML=xmlDoc.getElementsByTagName("a")[0].childNodes[0].nodeValue;document.g etElementById("from").innerHTML=xmlDoc.getElementsByTagName("from")[0].childNodes[0].nodeValue;document.getElemen tById("message").innerHTML=xmlDoc.getElementsByTagName("body")[0].childNodes[0].nodeValue;</script></body></html>Pruébalo »¡Nota importante!
Para extraer el texto "Tove" del elemento <to> del archivo XML anterior ("note.xml"), la sintaxis es:
getElementsByTagName("a")[0].childNodes[0].nodeValueTenga en cuenta que incluso si el archivo XML contiene solo un elemento <to>, aún debe especificar el índice de matriz [0]. Esto se debe a que el método getElementsByTagName() devuelve una matriz.
Cargar una cadena XML: ejemplo en varios navegadores
El siguiente ejemplo analiza una cadena XML en un objeto DOM XML y luego extrae información a través de JavaScript:
Ejemplo
<html><body><h1>Nota interna de W3Cschools</h1><div><b>Para:</b> <span id="to"></span><br /><b>De:< /b> <span id="from"></span><br /><b>Mensaje:</b> <span id="mensaje"></span></div><script>txt="<nota>";txt=txt+"<to>Tove</to>";txt=txt+"<de>Jani</de >";txt=txt+"<heading>Recordatorio</heading>";txt=txt+"<body>No me olvides de esto fin de semana!</body>";txt=txt+"</note>";if (window.DOMParser){parser=new DOMParser();xmlDoc=parser.parseFromString(txt,"text/xml");}else / /Internet Explorer{xmlDoc=nuevo ActiveXObject("Microsoft.XMLDOM");xmlDoc.async=false;xmlDoc.loadXML(txt);}document.getElementById("to").innerHTML=xmlDoc.getElementsByTagName("to")[0].childNodes[0] .nodeValue;document.getElementById("de" ).innerHTML=xmlDoc.getElementsByTagName("from")[0].childNodes[0].nodeValue;document.getElementById("message").innerHTML=xmlDoc.getElementsByTagName("body")[0].childNodes[0] .nodeValue;</script></body></html>Pruébalo »
En la siguiente sección, aprenderá cómo mostrar datos XML en una página HTML.