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 :

[DOM] Longueur 0 retournée par getElementsByTagName !


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 26
    Par défaut [DOM] Longueur 0 retournée par getElementsByTagName !
    Bonjour, je suis en train de lutter avec la fonction getElementsByTagName.

    D'après ce que j'ai compris, cette fonction retourne un tableau d'éléments sélectionnés par le tag en cours.

    Ma portion de code javascript est la suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    if(document.getElementsByTagName("div")){
             alert('il y a au moins un div !!');
    }
    var divs = document.getElementsByTagName("div");
    	alert(divs.length);
    Je vois bien le popup "Il y a au moins un div", mais alert(divs.length); me retourne 0 !
    Pourtant, j'ai bien plusieurs div dans mon formulaire, avec la même casse :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <div class="block">
         <div style="background-position: 0pt -52px;" class="checkbox selected">
              <input name="checkbox[]" type="checkbox"><label for="#">Unchecked Checkbox</label>
         </div>
         <div style="background-position: 0pt;" class="checkbox">
              <input name="checkbox[]" checked="checked" type="checkbox"><label for="#">Checked Checkbox</label>
         </div>
    </div>
    Là, je sèche complètement, si quelqu'un a une idée ou un début d'explication, elle serait le bienvenue !
    Merci d'avance.

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    heu ... chez moi ça retourne bien 3 ?


    Tu es sous quel navigateur? tu appelles quand ce bout de code ?

    PS même si tu n'as pas de div sur la page il te dira qu'il y en a au moins un ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 26
    Par défaut
    Merci de te pencher sur mon problème

    Ce bout de code est appelé lors de window.onload()
    J'ai testé sous Firefox2 et IE 7, même résultat...

  4. #4
    Membre chevronné
    Inscrit en
    Novembre 2006
    Messages
    336
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 336
    Par défaut
    Si la fonction est appelée avant le onload ça renvoit zéro, sinon ça renvoit bien 3. Peux tu poster l'intégralité de ton code?

    Et d'ailleurs ton test ne sert strictement à rien puisque la méthodes renvoit au minimun un tableau vide.

  5. #5
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 26
    Par défaut
    En fait, le code correspond à celui de ce site (initialize: function()):
    http://ryanfait.com/articles/2007/01...radio-buttons/

    J'ai juste dû rajouter des parenthèses à la ligne window.onload = Input.initialize(); pour que la fonction intialize se lance.
    Le xhtml associé est également celui de ce site (en ajoutant le chargement du js).

  6. #6
    Membre chevronné
    Inscrit en
    Novembre 2006
    Messages
    336
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 336
    Par défaut
    Citation Envoyé par DidRocks Voir le message
    En fait, le code correspond à celui de ce site (initialize: function()):
    http://ryanfait.com/articles/2007/01...radio-buttons/

    J'ai juste dû rajouter des parenthèses à la ligne window.onload = Input.initialize(); pour que la fonction intialize se lance.
    Le xhtml associé est également celui de ce site (en ajoutant le chargement du js).
    Cherche pas plus loin
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    window.onload = Input.initialize();
    etC'est la même chose.

    T'es censé indiquer à javascript quelle fonction executer quand l'evenement onload est lancé sur window. Donc y faire référence.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    window.onload = Input.initialize;
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    window.onload = function() {
               Input.initialize();
               Fonctionx();
               Fonctiony();
    }
    Si tu as plusieurs fonctions à executer

Discussions similaires

  1. PSQLException "Aucun résultat retourné par la requête&q
    Par BRAUKRIS dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 15/09/2005, 20h55
  2. valeur retournée par un .js
    Par astrofiles dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 09/08/2005, 10h20
  3. Compter le nombre d'enreg retournés par un DBExtract
    Par Sylvain James dans le forum XMLRAD
    Réponses: 2
    Dernier message: 02/11/2004, 14h15
  4. Réponses: 6
    Dernier message: 02/09/2003, 15h12
  5. limiter le résultat retourné par le count
    Par SuperFoustan dans le forum Langage SQL
    Réponses: 8
    Dernier message: 05/08/2003, 12h10

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