IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AJAX Discussion :

[AJAX] IE6 ne veut pas parser le XML sur mon serveur


Sujet :

AJAX

  1. #1
    Invité
    Invité(e)
    Par défaut [AJAX] IE6 ne veut pas parser le XML sur mon serveur
    Bonjour,

    Je me permets de demandez votre aide suite à la découverte d'un problème qui me bloque depuis plusieurs heures déjà.

    J'ai développé une application qui utilise ajax pour récupérer un contenu xml, qui contient des "ordres" que javascript devra suivre par la suite.

    En local, tout fonctionne parfaitement.
    En ligne, tout fonctionne, sauf IE 6 qui n'arrive pas à accéder aux propriétés du responseXML.

    Voici le code test que j'utilise :
    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
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    	<script type="text/javascript" src="jquery-1.3.2.js"></script>
    	<script type="text/javascript">
    		function test() 
    		{
    			alert('click');
     
    			$.ajax({
    				  type: "POST",
    				  url: 'test.php',
    				  data: "",
    				  async: true,
    				  dataType:"xml",
    				  success:function (xml, text)
    				  {
    					alert('OnSucces');
    					alert("Rep= "+text);
    					fin(xml);
    				  },
    				  complete:function(xmlHttpReq, text)
    				  {
    					alert("OnComplete");
    					alert("Rep= "+text);
    					fin(xmlHttpReq.responseXML);
    				  }
    			});
    		}
     
    		function fin(xml)
    		{
    			alert("NB= "+xml.getElementsByTagName('callback').length);
    		}
    	</script>
     
    </head>
     
    <body>
    	<a href="#" onclick="test(); return false">Test</a>
    </body>
    </html>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
    header("Content-Type: text/xml; charset=utf-8");
     
    echo '<?xml version="1.0" encoding="UTF-8"?>
    <xjax>
            <callback>test</callback>
            <callback>test2</callback>
    </xjax>';
    ?>
    Le scénario normal est donc l'apparition des messages Click / OnSuccess / Rep= success / Nb = 2 / OnComplete / Rep= success / Nb=2

    Sur IE6 en ligne, je n'ai que Click/ OnComplete / Rep= parserror / Nb=0.

    • J'ai essayé pas mal de bidouilles : changer le datatype de xml vers html, le onSuccess se lance bien mais il m'est alors impossible de manipuler le XML
    • Idem en changeant le header php par du html, même résultat.
    • J'ai essayé sans jQuery, avec une class ajax plus artisanale : le résultat est le même : on arrive dans le onComplete mais impossible de parcourir l'arbre xml.
    • Je vous ajoute à la fin du fichier les entête de ma requête ajax, peut être que vous y trouverez quelque chose qui ne va pas ( le gzip par ex )
    • PhpInfo du serveur attaché au message
    • Dans le onComplete, envoyer directement xml ou xml.responseXML ne change rien pour IE6.


    Auriez-vous une piste à me donner pour résoudre ce problème ?
    Merci beaucoup pour votre aide !

    Réponse
    Date Wed, 14 Oct 2009 07:12:43 GMT
    Server Apache
    X-Server-ID 40
    Vary Accept-Encoding
    Content-Encoding gzip
    Content-Length 152
    Keep-Alive timeout=1, max=100
    Connection Keep-Alive
    Content-Type text/xml; charset=utf-8

    Requête
    Host ###
    User-Agent Mozilla/5.0 (Windows; U; Windows NT 6.1; fr; rv:1.9.1.3) Gecko/20090824 Firefox/3.5.3 FirePHP/0.3
    Accept application/xml, text/xml, */*
    Accept-Language fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3
    Accept-Encoding gzip,deflate
    Accept-Charset ISO-8859-1,utf-8;q=0.7,*;q=0.7
    Keep-Alive 300
    Connection keep-alive
    X-Requested-With XMLHttpRequest
    Referer ###
    Content-Length 0
    Content-Type text/plain; charset=UTF-8
    PHPSESSID=6d446434965ef86312ad1c80fb6771a3
    Fichiers attachés Fichiers attachés
    Dernière modification par Sendusha ; 06/06/2011 à 18h58.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bon ... en fait le problème venait de IE tester ... en passant par un IE6 véritable ( vive la virtualisation ), tout fonctionne très bien !

    Une matinée de perdu ^^

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 6
    Dernier message: 20/08/2009, 21h21
  2. jboss n'arrive pas à parser web.xml
    Par tresorkoul dans le forum Wildfly/JBoss
    Réponses: 5
    Dernier message: 07/08/2009, 09h14
  3. [AJAX] FireFox ne veut pas du mode synchrone AJAX
    Par mickael28 dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 24/02/2009, 10h33
  4. [AJAX] FCKeditor ne veut pas du focus
    Par superpigeon dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 10/10/2007, 22h59
  5. [AJAX] probleme appelle page XML sur autre serveur
    Par ldcarpathes dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 14/08/2006, 18h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo