Bonjour,

Je suis en plein dans la migration d'un site marchant sous mozilla vers ie.

Mon problème viens lorsque je place le code recu grace au xmlhttprequest dans le code déjà présent.

Pour etre plus précis :
- je recupère le code par la methode responseXML
- j'envoie le noeud récupéré dans ma fonction de traitement
- dans cette fonction je parcours tout l'arbre et je recrée l'arbre du noeud dans mon code
- enfin je demande l'affichage de la div contenant le noveau code et la c'est la catastrophe. IE ne réagit plus et indique qu'il est occupé et que la fermeture pourrait engendrer des problèmes.

Voila le code qui pose problème :

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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
 
 
function getAjaxFile(fichier,Elt,Meth,Param) {
  var xhr=getXMLHTTP();
  var zoomElt=document.getElementById(Elt);
  xhr.open(Meth, fichier, true);
	xhr.onreadystatechange = function() {
    if(xhr.readyState==4){
      if (xhr.status == 200) {
        parcoursArbre(xhr.responseXML,zoomElt);
		  alert("avant affichange div");
		  zoomElt.style.display="";
		  alert("apres affichange div");
      }
    }
  };
  alert("fin parcours");
	if (Param != null) xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	alert("avant send");
	xhr.send(Param);
	alert("apres send");
}
 
function parcoursArbre(arbre,father) {
 
	for (var k=0; k<father.childNodes.length; k++) {
		alert("je supprime "+father.childNodes[k].tagName+" "+father.childNodes[k].id);
		father.removeChild(father.childNodes[k]);
	}
	for (var i = 0; i<arbre.childNodes.length; i++) {
		var Elt= arbre.childNodes[i];
		if (Elt.nodeType!=3) {
			var newElt = document.createElement(Elt.tagName);
			for (var j=0; j<Elt.attributes.length; j++) {
				if (Elt.attributes[j].specified) {
					newElt.setAttribute(Elt.attributes[j].nodeName,Elt.attributes[j].nodeValue)
				}
			}
			father.appendChild(newElt);
			parcoursArbre(arbre.childNodes[i],newElt);
		} else {
				father.appendChild(document.createTextNode(arbre.childNodes[i].nodeValue));
			}	
	}
}
Je n'arrive pas a voir le problème je pense que c'est un truc ridicule mais etant bloquer sur le code depuis plusieurs heures je ne voit plus rien

Merci d'avance pour vos réponses