Analizzatore XML
- Pagina precedente XML HttpRequest
- Pagina successiva DOM XML
Tutti i browser principali hanno un parser XML integrato, utilizzato per accedere e manipolare XML.
Il parser trasforma l'XML in un oggetto XML DOM - un oggetto che può essere manipolato con JavaScript.
Analizzatore XML
XML DOM (Document Object Model)Sono definiti attributi e metodi per accedere e modificare l'XML.
Tuttavia, prima di accedere al documento XML, deve essere caricato in un oggetto XML DOM.
Tutti i browser moderni forniscono un parser XML integrato che può convertire il testo in un oggetto XML DOM.
Analizzare la stringa di testo
Questo esempio trasforma una stringa di testo in un oggetto XML DOM e utilizza JavaScript per estrarre informazioni da esso:
esempio
<html> <body> <p id="demo"></p> <script> var text, parser, xmlDoc; text = "<bookstore><book>" "<title>雅舍谈吃</title>" + "<author>梁实秋</author>" + "<year>2013</year>" + "</book></bookstore>" parser = new DOMParser(); xmlDoc = parser.parseFromString(text,"text/xml"); document.getElementById("demo").innerHTML = xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue; </script> </body> </html>
Esempio di spiegazione
Definire la stringa di testo:
text = "<bookstore><book>" "<title>雅舍谈吃</title>" + "<author>梁实秋</author>" + "<year>2013</year>" + "</book></bookstore>"
Creare un parser XML DOM:
parser = new DOMParser();
Il parser ha creato un nuovo oggetto XML DOM utilizzando questa stringa di testo:
xmlDoc = parser.parseFromString(text,"text/xml");
oggetto XMLHttpRequest
oggetto XMLHttpRequestfornisce un parser XML integrato.
responseText
proprietà per restituire la risposta in forma di stringa.
responseXML
proprietà per restituire la risposta in forma di oggetto XML DOM.
Se si desidera utilizzare la risposta come oggetto XML DOM, è possibile utilizzare responseXML
proprietà.
esempio
richiesta del file cd_catalog.xml,ecco l'oggetto XML DOM da utilizzare:
xmlDoc = xmlhttp.responseXML; txt = ""; x = xmlDoc.getElementsByTagName("ARTIST"); for (i = 0; i < x.length; i++) { txt += x[i].childNodes[0].nodeValue + "<br>"; } document.getElementById("demo").innerHTML = txt;
- Pagina precedente XML HttpRequest
- Pagina successiva DOM XML