Pb avec xhr_object.open et IE [Résolu]

Signaler
Messages postés
2
Date d'inscription
lundi 19 janvier 2009
Statut
Membre
Dernière intervention
7 février 2010
-
Messages postés
2
Date d'inscription
lundi 19 janvier 2009
Statut
Membre
Dernière intervention
7 février 2010
-
Bonjour,
Je gère un site de club et j'ai essayé de mettre à jour un DIV avec un fichier externe, après pas mal de recherche sur Codes-Sources, j'ai vu que le plus utilisé était xhr_object, j'ai donc récupéré des exemples que j'ai adaptés.
Petite surprise cela fonctionne sur pas mal de navigateurs mais par sur IE.
J'ai donc repris ma recherche et sur tout les site de développement cette méthode est utilisée.
J'ai donc pris un exemple et fais le test sans modification, j'obtiens le même résultat, problème avec xhr_object.open(method, filename, true);

Voici ce que j'obtiens dans le débuger de IE:
Arrêt provoqué par une erreur jscript - Accès refusé

Voici la fonction utilisée, un contrôle avant la fonction m'a confirmé que le contenu de url et id est conforme à mes attentes.

 function envoieRequete(url,id)
{
var xhr_object = null;
var position = id;
   if(window.XMLHttpRequest)  xhr_object = new XMLHttpRequest();
  else
    if (window.ActiveXObject)  xhr_object = new ActiveXObject("Microsoft.XMLHTTP"); 

// On ouvre la requete vers la page désirée
var method = 'GET';
var filename = url;

xhr_object.open(method, filename, true);
xhr_object.onreadystatechange = function(){
if ( xhr_object.readyState == 4 )
{
// j'affiche dans la DIV spécifiées le contenu retourné par le fichier
document.getElementById(position).innerHTML = xhr_object.responseText;
}
}
// dans le cas du get
xhr_object.send(null);

}


Si quelqu'un a rencontré ce problème et trouvé la solution, ce serait sympa de me répondre

Cordialement,

Degom95

2 réponses

Messages postés
2
Date d'inscription
lundi 19 janvier 2009
Statut
Membre
Dernière intervention
7 février 2010

Bonjour,
Désolé du temps de réponse mais vacances obliges.
Merci pour cette réponse, cela fonctionne effectivement en local.
Bien que je ne comprenne à vraiment pourquoi le fait d'inverser l'ordre de test permet à IE de considérer la fonction comme bonne.
Je vais tester maintenant sur mon serveur Free, ce que je n'avais pas fait tant que cela ne fonctinnait pas en local

Merci encore pour cette solution,

Cordialement,

Degom95
Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
18
Bonjour,
en local je présume
essaies de biaiser, non le i n'est pas en trop, en inversant les initialisations
if (window.ActiveXObject)
  xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
else
  if(window.XMLHttpRequest)
    xhr_object = new XMLHttpRequest();

;O)