begin process at 2010 02 09 20:00:11
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

Framework

 > 

Ajax

 > 

Impossible de parser un flux XML sous IE7


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Impossible de parser un flux XML sous IE7

vendredi 11 juillet 2008 à 18:07:57 | Impossible de parser un flux XML sous IE7

rhan_659

Bonjour

je parse un flux XML, avec FF3 et I.E6 pas de souci mais avec IE 7 ça marche pas

voila le flux

<html>
<head>
</head>
<body text="#000000">
azertyuiop:[AAA]:[BBB]:[CCC]
</body>
</html>

voila la ligne qui parse

return XHRequest.responseXML.documentElement.getElementsByTagName("body").item(0).firstChild.nodeValue.split(":")

sous IE7 j'ai ce message

Erreur : 'XHRequest.responseXML.documentElement' a la valeur null ou n'est pas un objet

vendredi 11 juillet 2008 à 21:34:49 | Re : Impossible de parser un flux XML sous IE7

nicomilville

Membre Club
Salut, c'est normal, sous IE c'est un activeX et il ne s'appelle pas comme ça ...

Regarde ça :

 var xhr_object = null;
 
 if(window.XMLHttpRequest) FF
  xhr_object = new XMLHttpRequest();
 else if(window.ActiveXobject)
  xhr_object = new ActiveXobject("Microsoft.XMLHTTP"); //IE
 else{
  alert("Votre navigateur n'est pas compatible avec XMLHttpRequest");
  return;
 }

Rajoute ces ligne en changeant le nom de la variable et tu verra ça marchera !

a++

Si la réponse vous convient, pensez : Réponse acceptée !

samedi 12 juillet 2008 à 01:29:48 | Re : Impossible de parser un flux XML sous IE7

rhan_659

merci mais ça ne change rien, et le code est fonctionnelle avec ie6...

voici le code complet

   if(window.XMLHttpRequest){
      // Firefox et autres
      XHRequest = new XMLHttpRequest();
      if (XHRequest.overrideMimeType){XHRequest.overrideMimeType('text/xml')}
   }else if(window.ActiveXObject){
      // Internet Explorer
         try { XHRequest = new ActiveXObject("Msxml2.XMLHTTP");
         }
         catch(e) {XHRequest = new ActiveXObject("Microsoft.XMLHTTP");
         }
   }else{
      //non supporté par le navigateur
      alert("Ajax Error :\n XMLHttpRequest non supporté par le navigateur");
      return "";
   }

   XHRequest.open("Get", urlRequeste , false);
   XHRequest.send(null);

      //traitement uniquement si le flux XML est complètement chargé; 4 = complet"
      if (XHRequest.status == 200) {
     
      return XHRequest.responseXML.documentElement.getElementsByTagName("body").item(0).firstChild.nodeValue.split(":")

samedi 12 juillet 2008 à 05:27:44 | Re : Impossible de parser un flux XML sous IE7

bultez

Membre Club


Bonjour,

pour le xml, avec IE, il faudrait utiliser :
                            xmlD = new ActiveXObject('Microsoft.XMLDOM');
                            xmlD.async=true;
                            xmlD.onreadystatechange = function ()
                            {    if ( xmlD.readyState == 4 )
                                {    ici on traite xmlD.xml    }
                            }
attention : new XMLHttpRequest(); répond true pour IE7,                       



                Cordialement            Bul         [mon Site]     [M'écrire]
samedi 12 juillet 2008 à 06:30:30 | Re : Impossible de parser un flux XML sous IE7

bultez

Membre Club
j'ai oublié le                  xmlD.load(fichier);

et de dire qu'avec FF, normalement :
                xmlD = document.implementation.createDocument('','', null);
                xmlD.onload = function()   
                {    traitement de xmlD.documentElement.textContent);                   
                }
                xmlD.load(fichier);


ajax c'est pour communiquer avec le langage serveur, pas pour récupérer du xml
( même si ça baigne avec FF, avec IE je ne pense pas... peut-être me trompe-je )



                Cordialement            Bul         [mon Site]     [M'écrire]
samedi 12 juillet 2008 à 06:44:39 | Re : Impossible de parser un flux XML sous IE7

bultez

Membre Club

ah ben zut, je n'avais pas vu ce que tu fais voir  !!

<html>
<head>
</head>
<body text="#000000">
azertyuiop:[AAA]:[BBB]:[CCC]
</body>
</html>

n'est pas un flux xml ! c'est du html !
curieux de vouloir traiter cela comme du xml ?
tu peux mettre la réponse dans un div ( caché )
et y utiliser les getElementsByTagName....

pas sûr que le traitement du xml que je proposais
fonctionne dans ce cas.   à tester ?


                Cordialement            Bul         [mon Site]     [M'écrire]
samedi 12 juillet 2008 à 11:15:57 | Re : Impossible de parser un flux XML sous IE7

rhan_659

je vux le traiter comme un flux xml car je ne veux récuperer que "azertyuiop:[AAA]:[BBB]:[CCC]"

pas le reste, et je me suis dis que si je le traitait comme un flux xml ça serais plus facile pour récupérer l'info dont j'ai besoin.

autre question si
" new XMLHttpRequest(); répond true pour IE7, " je fais comment pour instancier correctement en fonction du navigateur ?
samedi 12 juillet 2008 à 11:36:21 | Re : Impossible de parser un flux XML sous IE7

rhan_659

re,

je pensais qu'en utilisant XHRequest.responseXML au lieux de XHRequest.responseTest j'obtiendrais un flux xml au lieux d'un text meme si coté format c'est pas extra-ordinaire

ce flux est bien générer par le serveur, le probleme c'est pour en extraire l'information simplement.
samedi 12 juillet 2008 à 11:45:01 | Re : Impossible de parser un flux XML sous IE7

nicomilville

Membre Club
Re,

Je t'aurai bien conseillé la fonction PHP : strip_tags

Dommage que tu veuille le faire en javascript !

www.php.net/strip_tags

a++

Si la réponse vous convient, pensez : Réponse acceptée !

samedi 12 juillet 2008 à 12:03:31 | Re : Impossible de parser un flux XML sous IE7

bultez

Membre Club

tu ne peux pas renvoyer que "azertyuiop:[AAA]:[BBB]:[CCC]" ?
un petit split sur la réponse et basta.

ou alors renvoi un flux xml... mais traite le comme du xml

<?xml version="1.0" encoding="ISO-8859-1"?>
    <tout>
            <prm>
azertyuiop</prm>
            <prm>[AAA]</prm>
            <prm>[BBB]</prm>
            <prm>[CCC]</prm>
    </tout>

>>
je fais comment pour instancier correctement en fonction du navigateur ?
comme tu as fait je pense pas regardé de près mais ça doit baigner



                Cordialement            Bul         [mon Site]     [M'écrire]

1 2 3

Cette discussion est classée dans : flux, xml, impossible, parser, ie7


Répondre à ce message

Sujets en rapport avec ce message

Parser XML pour tranformation XSL sous firefox ? [ par rom3ro ] Bonjour,     Je souhaiterais savoir s'il était possible de pouvoir transformer des documents XML avec du XSL sous firefox, comme IE permet de le faire Parser du XML [ par Websebdo ] Bonjour,J'ai chercher sur les fofos mais j'avoue ne pas avoir trouvé la réponse...Je cherche a parser  un fichier xml en js :ejs_scroll_message = new reponseXML + parser en javascript [ par rhum07 ] Bonjour.J'ai créé un petit moteur ajax en mode post. Le résultat retourné est du XML.Peut-on, en javascript parser ce xml comme en php avec la fonctio Condition pour parser du xml [ par raskar97one ] Bonjour à tous,Je suis à mi chemin entre débutant et intermédiaire en JAVSCRIPT. :D J'ai un fichier xml généré avec dom qui ressemble à ça: Parser un XML en javascript (=xml to array) [ par Logan ] Bonjour,Je suis en train de realiser un petit chat en ajax, et je dois donc parser un xml pour en recuperer des valeurs en javascript...je vous montre Probleme pour parser du xml avec I.E [ par rhan_659 ] Bonjourj'ai fais un code pour parser un flux XML (obtenue via de l'ajax), ça marche nickel sous Firefox mais i.e ne veux rien savoirvoila le codevar e Intégration d'un flux RSS [ par simo14 ] Bonjour,J'avais déja fais une fonction javascript ( createNewsList() ) qui me crée une liste de news à partir d'un fichier xml (newsList.xml) (et news Problème Parser XML Ajax sous Safari/Chrome [ par ju0123456789 ] Bonjour, Je rencontre un problème de parser XML dans une requete Ajax sous le navigateur Safari (Idem sous chrome). Je m'explique, la requete Ajax ( Envoyer et récupérer un champ texte de formulaire entre une page Web et fichier XML? [ par alain8225 ] Salut à tous, J'ai créé une page Web dans laquelle j'ai placé un formulaire contenant des champs TEXT. L'utilisateur entre ses données qui sont enreg Envoi de code HTML en Ajax (méthode POST) et éditeurs WYSIWYG [ par mioumiounorris ] Bonjour ! Je suis en train de réaliser la partie admin d'un site, et j'utilise TinyMCE afin de pouvoir publier mes articles. Je me suis mis en tête de


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 4,664 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales