Bonjour !

Après une recherche sur le forum et sur Google, je me résous à vous soumettre mon problème.

J'essaie de mettre au point une fonction JS permettant la mise à jour d'une liste d'un formulaire A à partir de données saisies dans le formulaire B d'une autre fenêtre F2.
Lorsque le formulaire B est validé, la fenêtre F2 est fermée en appelant une fonction de mise à jour dans la première fenêtre (F1), retrouverEntree().

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
 
function retrouverEntree(ClefTable) {
	// Initialisation XHR et parametres d'appels
	var xhr = initialiserXMLHTTP();
	var xhr_params = "clef=" + ClefTable;
 
	// Definition appel fonction sur changement etat XHR
	xhr.onreadystatechange = function() {
		if (xhr.readyState == 4) {
			switch (xhr.status) {
				case 200:
					var docXML = cleanXML(xhr.responseXML.documentElement);
					var Entree = docXML.getElementsByTagName("entree")[0];
					majListe(ClefTable,Entree.getElementsByTagName("texte")[0].firstChild.nodeValue,Entree.getElementsByTagName("valeur")[0].firstChild.nodeValue);
					break;
				case 400:
				case 500:
					alert("Une erreur technique s'est produite. Merci de renouveler l'opération ultérieurement");
					break;
				default:
					alert("Erreur lors de l'enregistrement. Merci de renouveler l'opération ultérieurement.");
			}
		}
	};
 
	// Envoi donnees vers serveur
	xhr.open("POST", "retrouver_entree.php", true);
	xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	xhr.send(xhr_params);
}
Cet appel à la fonction retrouverEntree() fonctionne très bien, le script PHP qu'elle appelle est bien exécuté (vérifié dans les logs), mais la fonction en elle-même plante sur l'appel xhr.status. avec l'erreur :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
Erreur*: [Exception... "Component returned failure code: 0x80040111 (NS_ERROR_NOT_AVAILABLE) [nsIXMLHttpRequest.status]"  nsresult: "0x80040111 (NS_ERROR_NOT_AVAILABLE)"  location: "JS frame :: http://localhost/Bibliotheque/Bin/fonctions_java.js :: anonymous :: line 169"  data: no]
Par ailleurs, le script PHP appelé seul dans un navigateur fonctionne bien également et me renvoie un fichier XML correctement constitué.

Du coup, je ne comprends pas d'où provient mon erreur (si erreur il y a), d'autant que je me suis beaucoup inspiré des tutoriels du site pour construire ma fonction JS.
Quelqu'un aurait-il une explication, et encore mieux, une solution ?