Bonjour, je planche depuis plusieurs jours sur un problème que je n'arrive pas à résoudre.
J'ai écrit un script qui fait des appels via AJAX, pour envoyer plusieurs formulaires. Sous IE ça passe, mais sous Firefox, j'obtiens toujours la même erreur :
la fonction qui pose problème est celle-ci :
Cette fonction est appelée par celle-ci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 function checkForm(form){ var i; var done=0; for (i=0;i<form.length;i++)//l'erreur se situe ici if (!form.elements[i].value) done++; if (done==0) return true; else return false; }
Pouvez-vous me dire ce qui ne vas pas ?
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 function addCat(){ var form = document.getElementById("admCat"); var resp = document.getElementById("admCatResp"); var xhr= init(); 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) { 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; }
Merci d'avance,
Partager