Pb avec xhr_object.open et IE

Résolu
Degom95 Messages postés 2 Date d'inscription lundi 19 janvier 2009 Statut Membre Dernière intervention 7 février 2010 - 27 janv. 2010 à 12:27
Degom95 Messages postés 2 Date d'inscription lundi 19 janvier 2009 Statut Membre Dernière intervention 7 février 2010 - 7 févr. 2010 à 17:36
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

Degom95 Messages postés 2 Date d'inscription lundi 19 janvier 2009 Statut Membre Dernière intervention 7 février 2010
7 févr. 2010 à 17:36
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
3
PetoleTeam Messages postés 3426 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 14 janvier 2011 17
29 janv. 2010 à 18:53
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)
0
Rejoignez-nous