Bonjour, je coince depuis plusieurs jours sur un problème avec DOM et Firefox.
J'envoie, via AJAX, un formulaire à une page PHP. Cette page PHP me renvoie un XML, que je récupère via responseXML.
Voici le code XML généré par ma page php.
Je souhaite récupérer des données dans ce document XML.
Sous IE, j'ai un message d'alerte qui contient "Add", ce qui est correct.
Malheureusement, avec le même code sous Firefox, le message d'alerte contient "undefined" au lieu de Add.
Pouvez-vous me dire pourquoi, ainsi que la manière de corriger cette erreur ?
Merci d'avance,
Big
J'envoie, via AJAX, un formulaire à une page PHP. Cette page PHP me renvoie un XML, que je récupère via responseXML.
Voici le code XML généré par ma page php.
<?xml version="1.0" encoding="utf-8" ?>
<Root>
<Status>Add</Status>
<Id>15</Id>
</Root>
Je souhaite récupérer des données dans ce document XML.
function addCat(){
var form = document.getElementsByTagName('form')[1];
var resp = document.getElementById("admCatResp");
var xhr= init();//crée un objet XMLHTTPRequest
xhr.open("POST","server/admAddCat.php",true);
if(checkForm(form)) {
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
xhr.send(getFormData(form));
xhr.onreadystatechange = function() {
if (xhr.readyState == 4) {
alert(xhr.responseXML.getElementsByTagName("Status")[0].text);
if (xhr.responseXML.getElementsByTagName("Status")[0].text == "Add"){
var id = xhr.responseXML.getElementsByTagName('Id')[0].text;
var name = xhr.responseXML.getElementByTagName('Name')[0].text;
new_element = new Option(name,id);
form.cbIdCat.options[form.cbIdCat.length] = new_element;
resp.innerHTML = "Catégorie n° "+xhr.responseXML.getElementsByTagName('Id')[0].text+" ajoutée";
}
else if (xhr.responseXML.getElementsByTagName("Status")[0].text == "Update")
resp.innerHTML = "Catégorie n°"+xhr.responseXML.getElementsByTagName('Id')[0].text+" modifiée";
}
else resp.innerHTML= treatmentError;
form.reset();
}
}
else resp.innerHTML = errorMsg;
}
Sous IE, j'ai un message d'alerte qui contient "Add", ce qui est correct.
Malheureusement, avec le même code sous Firefox, le message d'alerte contient "undefined" au lieu de Add.
Pouvez-vous me dire pourquoi, ainsi que la manière de corriger cette erreur ?
Merci d'avance,
Big