Bonjour,

Je continue mes petits débuts avec ajax et je commence pleinement avec xml (c'est pour vous dire le niveau !). En surfant un peu je me suis inspirée de codes pour lire des données dans un fichier xml mais le code obtenu ne fonctionne pas.

Je voudrais interroger mon fichier xml avec mon code ajax afin d'aller y recueillir les informations et les afficher dans les champs d'un formulaire html.

Voici ma page xml (test.xml) :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
<?xml version="1.0" encoding="ISO-8859-1"?>
<bibliotheque>
    <commentaire>
        <idcomm>111</idcomm>
        <titre>MonTest</titre>
        <comm>Ceci est ma note... </comm>
        <type>ns</type>
        <pj>pj.jpg</pj>
    </commentaire>
</bibliotheque>
Voici mon code javascript :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
 
<script type="text/javascript">
function loadXML(){
    if (document.implementation && document.implementation.createDocument){
        xmlDoc = document.implementation.createDocument("", "", null);
        xmlDoc.onload = getData;
    }
    else if (window.ActiveXObject){
        xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
        xmlDoc.onreadystatechange = function(){
            if (xmlDoc.readyState == 4) getData()
        };
    }
    if(xmlDoc){
              xmlDoc.load("test.xml");
    }
 
}
 
 
function champs() {
    loadXML();  
    var titre = docXml.getElementsByTagName("titre");
    alert (docXml.getElementsByTagName("titre"));
    var comm = docXml.getElementsByTagName('comm');
 
    document.forms["NomFormulaire"].elements["titre"].value = titre[1].firstChild.nodeValue;
  document.forms["NomFormulaire"].elements["commentaire"].value = comm[1].firstChild.nodeValue;
 
}
Laquelle fonction est appelée via un lien :
<a href="#" onclick="champs()";>Test</a>

Je vous remercie d'avance de votre aide précieuse !