Tutoriel XML DO...SE CONNECTER
Tutoriel XML DOM
auteur:php.cn  temps de mise à jour:2022-04-13 15:27:56

Fonction de chargement DOM


XML DOM Fonction de chargement


Le code de chargement d'un document XML peut être stocké dans une fonction.


Fonction loadXMLDoc()

Pour rendre le code de la page précédente plus facile à maintenir (vérifiez les anciens navigateurs), il doit être écrit sous forme de fonction :

fonction loadXMLDoc(dname)
{
if (window.XMLHttpRequest)
{
xhttp=new XMLHttpRequest();
}
else
{
xhttp =new ActiveXObject("Microsoft.XMLHTTP");
}
xhttp.open("GET",dname,false);
xhttp.send();
return xhttp.responseXML;
}

La fonction ci-dessus peut être stockée dans la section <head> d'une page HTML et appelée à partir d'un script dans la page.

lamp.gifLes fonctions décrites ci-dessus sont utilisées pour toutes les instances de documents XML dans ce tutoriel !


JavaScript externe pour loadXMLDoc()

Pour faciliter la maintenance du code ci-dessus et garantir que le même code est utilisé dans toutes les pages, nous stockons la fonction dans un fichier externe dans le dossier.

Le nom du fichier est "loadxmldoc.js" et est chargé dans la section d'en-tête de la page HTML. Le script de la page appelle ensuite la fonction loadXMLDoc().

L'exemple suivant utilise la fonction loadXMLDoc() pour charger books.xml :

Instance

<!DOCTYPE html>
<html>
<head>
<script src="loadxmldoc.js"></script>
</head>
<body>
<script>
xmlDoc=loadXMLDoc("books.xml");

document.write(xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue + "<br>");
document.write(xmlDoc.getElementsByTagName("author")[0].childNodes[0].nodeValue + "<br>");
document.write(xmlDoc.getElementsByTagName("year")[0].childNodes[0].nodeValue);
</script>
</body>
</html>

Exécuter l'instance»

Cliquez sur le bouton « Exécuter l'instance » pour afficher l'instance en ligne

Comment obtenir des données à partir de fichiers XML sera expliqué dans le chapitre suivant.


Fonction loadXMLString()

Pour rendre le code de la page précédente plus facile à maintenir (vérifier sur les anciens navigateurs), il doit être écrit sous forme de fonction :

fonction loadXMLString(txt)
{
if (window.DOMParser)
{
parser=new DOMParser();
xmlDoc=parser.parseFromString(txt,"text/ xml" );
>
else // Internet Explorer
{
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async=false;
xmlDoc.loadXML (txt );
>
return xmlDoc;
>

La fonction ci-dessus peut être stockée dans la section <head> la page.

lamp.gifLa fonction décrite ci-dessus est utilisée pour toutes les instances de chaîne XML dans ce tutoriel !


JavaScript externe pour loadXMLString()

Nous avons stocké la fonction loadXMLString() dans un fichier appelé "loadxmlstring.js".

Instance

<!DOCTYPE html>
<html>
<head>
<script src="loadxmlstring.js"></script>
</head>
<body>
<script>
text="<bookstore><book>";
text=text+"<title>Everyday Italian</title>";
text=text+"<author>Giada De Laurentiis</author>";
text=text+"<year>2005</year>";
text=text+"</book></bookstore>";

xmlDoc=loadXMLString(text);

document.write(xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue);
document.write("<br>");
document.write(xmlDoc.getElementsByTagName("author")[0].childNodes[0].nodeValue);
document.write("<br>");
document.write(xmlDoc.getElementsByTagName("year")[0].childNodes[0].nodeValue);
</script>
</body>
</html>

Exécuter l'instance»

Cliquez sur le bouton « Exécuter l'instance » pour afficher l'instance en ligne


Site Web PHP chinois