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

JavaScript Discussion :

[AJAX] [IE6+AJAX] DIV non reconnu


Sujet :

JavaScript

  1. #1
    Membre du Club
    Inscrit en
    Juin 2006
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 53
    Points : 47
    Points
    47
    Par défaut [AJAX] [IE6+AJAX] DIV non reconnu
    Bonjour,
    J'essaie de réaliser un code AJAX simple qui marche très bien sous FireFox, par contre sous IE6, j'obtiens une erreur JavaScript me disant: document.getElementById('...') a la valeur null ou n'est pas un objet...

    Voici mon code:
    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
    <html>
    <head>
    <title>Bayn.net.ma</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <script language="JavaScript" type="text/javascript">
    function listage(){
    	var xhr = null; 
    	if(window.XMLHttpRequest) // Firefox et autres
    	   xhr = new XMLHttpRequest(); 
    	else if(window.ActiveXObject){ // Internet Explorer 
    	   try {
    	            xhr = new ActiveXObject("Msxml2.XMLHTTP");
    	        } catch (e) {
    	            xhr = new ActiveXObject("Microsoft.XMLHTTP");
    	        }
    	}
    	else { // XMLHttpRequest non supporté par le navigateur 
    	   alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); 
    	   xhr = false; 
    	}
    	xhr.onreadystatechange = function(){
    		// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
    		if(xhr.readyState == 4 && xhr.status == 200){
    			leselect = xhr.responseText;
    			document.getElementById("zone").innerHTML = leselect;
    		}
    	}
    	xhr.open("GET","list.php",true);
    	xhr.send(null);	
    }
    
    </script>
    </head>
    <body>
    <script language="JavaScript">
    listage()
    </script>
    <div id="List">
      <div id="zone" name="zone">
              loading...
      </div> 
    </div>
    </body>
    </html>
    le fichier list.php affiche le contenu d'une table...

    Si quelqu'un pouvait m'aider s'il vous plaît car je suis bloqué depuis maintenant un jour...

    Merci d'avance

  2. #2
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Bonjour,
    remarque préalable :
    dans ton cas le recours à Ajax est un peu discutable : dans la mesure où il est appelé au chargement de la page (via la balise script), tu pourrais générer ton select en même temps que le reste ...

    Mais techniquement, l'erreur vient du fait que tu appelles ton script en début de page.
    Le <div> de "réception" n'existe donc pas forcément à ce moment là.

    Il faudrait appeler ta fonction sur le onload du body, ou encore passer ta balise <script> en toute fin de page.

    Mais encore une fois : Ajax est-il bien nécessaire ici ?

    A+
    Pour tout savoir sur l'utilisation du forum

    En postant votre message, n'oubliez pas les Règles du Club.

  3. #3
    Membre du Club
    Inscrit en
    Juin 2006
    Messages
    53
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 53
    Points : 47
    Points
    47
    Par défaut
    merci E.Bzz pour cette réponse très clair!!!
    en plaçant le div en fin de page, ça passe nickel.

    Et puis, comme tu l'as si bien suggéré, je vais carrément laisser tomber Ajax dans ce cas!

    Merci encore!

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 22/06/2011, 12h53
  2. background d'une Div non reconnu sous IE
    Par Nimothenicefish dans le forum Mise en page CSS
    Réponses: 6
    Dernier message: 04/01/2009, 12h54
  3. [AJAX] AJAX IE vs FFX et balises non reconnues
    Par titioux dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 14/04/2008, 13h47
  4. [AJAX] Création obj/form non accessibles
    Par speedev dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 04/07/2006, 11h27

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