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] getElementByTagName()


Sujet :

JavaScript

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 5
    Par défaut [DOM] getElementByTagName()
    Bonjour a tous,

    Je debute en javascript et je bute sur un petit soucis avec getElementByTagName() que je n'ai pu resoudre malgré mes recherches.
    J'ai besoin de recuperer le code brut dans le 3eme <table> mais le 2eme qui est commenté semble m'en empecher.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <table><tr>
           <td align='center'><a href='index.php?categorie=machin'>machin</a>
         </tr></table>
     
    <!-- <table width='100%'>
    </table> /-->
     
    <table><tr>
           <td align='center'><a href='index.php?categorie=bidule'>bidule</a>
         </tr></table>
    Si je fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var verif = this.doc.getElementsByTagName('table')[0].childNodes[0].innerHTML;
    alert(verif);
    alert m'affiche
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <tr>
       <td align='center'><a href='index.php?categorie=machin'>machin</a>
    </tr>
    Mais si je fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var verif = this.doc.getElementsByTagName('table')[1].childNodes[0].innerHTML;
    alert(verif);
    La popup/alert ne s'affiche pas, je n'ai pas d'erreur dans la console javascript et le code qui suit alert(verif); continue de s'executer.
    En fait, je ne peut acceder a aucune balise <table> apres celle qui est entre commentaire. Pourtant le DOM interprete bien le commentaire comme un #comment.
    Pour info, le code ne servira que sous firefox.

    J'espere m'etre bien expliquer et que quelqu'un pourra m'aider. Merci d'avance pour votre aide.

  2. #2
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Par défaut
    essaye un :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementsByTagName('table')[0].childNodes[0].innerHTML;
    à la place de this.doc ...

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 5
    Par défaut
    La console JS me sort une erreur :
    document.getElementsByTagName("table")[0] has no properties

    Meme erreur avec la 2eme balise <table> :
    document.getElementsByTagName("table")[1] has no properties

    En fait je recupere le document avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var doc = e.originalTarget;
    que j'envoie a une fonction parsing() par et dans la fonction parsing() j'ai
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    set_doc : function (_1) {
    		this.doc = $$(_1);
    	},
    et aussi mon
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var verif = this.doc.getElementsByTagName('table')[1].childNodes[0].innerHTML;
    alert(verif);
    C'est une extension pour firefox que j'essaye d'adapter et j'avoue que je comprends pas tous le code.

  4. #4
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Par défaut
    bizare :

    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
     
    <table width="100%" border="1">
      <tr>
        <td>coucou</td>
      </tr>
    </table>
    <table width="100%" border="1">
      <tr>
        <td>recoucou</td>
      </tr>
    </table>
    <script type="text/javascript">
    	var tab1 = document.getElementsByTagName('table')[0].getElementsByTagName('td')[0].innerHTML;
    	alert(tab1);
    	var tab2 = document.getElementsByTagName('table')[1].getElementsByTagName('td')[0].innerHTML;
    	alert(tab2);	
    </script>

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 5
    Par défaut
    Mais c'est bien sur

    Merci le_chomeur, avec un getElementByTagName supplementaire ca passe nickel. J'ai repris ton bout de code quand meme, rajouté une balise <table> commenté entre les deux autres et un childNodes et bizarrement la ca passe.

    Enfin bon, je vais m'en sortir avec ta solution
    Je mets un petit resolu et je te remercie encore le_chomeur pour ton aide

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

Discussions similaires

  1. recherche dans un document xml via DOM
    Par ndoye_zaff dans le forum APIs
    Réponses: 5
    Dernier message: 11/06/2003, 14h44
  2. XML DOM et gros fichiers
    Par Manu_Just dans le forum APIs
    Réponses: 4
    Dernier message: 28/03/2003, 09h50
  3. [DOM/SAX]Choix...
    Par miss8 dans le forum APIs
    Réponses: 4
    Dernier message: 17/03/2003, 18h37
  4. pb formatage document XML généré par un dom tree
    Par lionel69 dans le forum APIs
    Réponses: 11
    Dernier message: 17/10/2002, 09h53
  5. Réponses: 3
    Dernier message: 04/09/2002, 09h42

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