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] message: object HTMLCollection


Sujet :

JavaScript

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2006
    Messages : 69
    Par défaut [DOM] message: object HTMLCollection
    Bonjour,

    Object HTMLCollection, c'est le message que j'obtiens lorsque je fais un alert sur ce code javascript qui agit sur le tableau d'une page HTML:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    var rech = document.getElementsByTagName("th");
    alert(rech);
    Comment faire pour vraiment récupérer ce qui est dans la balise th??

  2. #2
    Membre Expert Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 023
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 023
    Par défaut
    Salut, il faut que tu parcours la collection, ex :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    var rech = document.getElementsByTagName("th");
    var str = "";
    var rechCount = rech.length;
    for(i = 0; i < rechCount; i++)	{
    	str += " - " + rech[i].innerHTML;
    }
    alert(str);
    Bye

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2006
    Messages : 69
    Par défaut
    j'ai essayé ton script, mais ca ne me renvoie rien dans le alert: il apparait une boite de dialogue vide et je ne peux cliquer que sur ok...

  4. #4
    Membre Expert Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 023
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 023
    Par défaut
    Il faudrait voir la structure de ton tableau, notamment ce qu'il y a dans les th mais tu peux essayer avec un exemple tout simple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <table>
    <tr>
    <th>un titre</th>
    <td>ert</td>
    <td>ertert</td>
    </tr>
    <tr>
    <th>un autre titre</th>
    <td>tyuty</td>
    <td>erter</td>
    </tr>
    </table>
    et faut pas oublier que tu peux accéder à un élément DOM que une fois qu'il a été construit, donc t'es obligé de mettre le script après le table

  5. #5
    Membre Expert
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    1 252
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 252
    Par défaut
    ... ou mettre toutes les instructions dans un window.onload= function(){ ... };

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2006
    Messages : 69
    Par défaut
    Il faudrait voir la structure de ton tableau, notamment ce qu'il y a dans les th mais tu peux essayer avec un exemple tout simple :
    En fait, mon tableau est un code source de page HTML puisque je veux en faire ressortir des éléments... Voici un fragment de la structure (j'ai enlevé lle texte et quelques choses inutiles car c'est bien long):

    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
     
    <table width="548">
    <tr>
          <td class=... colspan="8">...</td>
    </tr>
    <tr> 
          <td class=...></td>
          <td class=...></td>
          <td class=...></td>
          <td class=...></td>
          <td class=...></td>
          <td class=...></td>
          <td class=...></td>
        </tr>
        <tr>
    <tr>
          <th width="30"> <a href="#"  tabindex="8" >6</a> <a href="#" title="****texte a récupérer****"></a> </th>
          <th width="30"> <a style="cursor:pointer" onMouseOver= ... </a> </th>
          <th width="130" style='white-space: nowrap;'> </th>
          <th width="30" style='white-space: nowrap;'> <a style="cursor:pointer"... </a> </th>
          <th width="30"> <a style="cursor:pointer" ... /></a> </th>
          <th width="150"> ... </a> </th>
          <th width="80"> <a style="cursor:pointer" onMouseOver= ... </a> </th>
          <th width="125" style='white-space: nowrap;'> </th>
    </tr>
    <tr>
          <th width="30"> <a href="#"  tabindex="9" >7 <a href="#" title="texte a récupérer"></a> </th>
          <th width="30"> <a style="cursor:pointer" onMouseOver=.../></a> </th>
          <th width="130" style='white-space: nowrap;'> <a href='#' ...
          <th width="30" style='white-space: nowrap;'> </th>
          <th width="30"> </th>
          <th width="150"> <a style="cursor:pointer" onMouseOver=...></a> </th>
          <th width="80"> <a style="cursor:pointer" onMouseOver=...</a> </th>
          <th width="125" style='white-space: nowrap;'> <a style="cursor:pointer" onClick=.../></a> <a href="buddy.php?session=0fa0e08dbadd&a=2&u=183158"><img src="http://80.237.203.201/download/use/lambda/img/b.gif" border="0" alt="Demander à être ami" title="Demander à être ami" /></a> </th>
    </tr>
    Je veux récupérer ce qui est écrit "***texte a récupérer****", il y en a deux...
    J'avais le code que j'ai mis dans les posts précédent...
    Quelqu'un a t il une idée de pourquoi ca ne marche pas?
    Le javascript est lancé par une appilcation xul externe a la page html, c'est un menu firefox, donc lorsque le script est lancé, le tableau a déjà été généré...
    Aidez moi!

  7. #7
    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 tu confonds pas th et td ...
    ta structure de tableau n'est pas valide !!!
    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 !

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2006
    Messages : 69
    Par défaut
    C'est en tout cas ce que je trouve comme source en demandant a firefox...
    Je sais que c'est bizarre, mais il semble que ca fonctionne...
    C'est également la source que m'a affiché l'extension web developper de firefox...

    Alors soit ces logiciels me donne une source erronée, dans ce cas il me faut autre chose pour extraire ce code source...
    Ou alors, il faut utiliser ce code source et en extraire le texte que je souhaite...

    Mais seul, je n'y parviens pas et c'est pour ca que je me tourne vers des experts comme vous!
    Aidez moi!!

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2006
    Messages : 69
    Par défaut
    Personne n'a d'idée?
    Peut etre y a t'il une autre solution de GetElementsByTagName?

  10. #10
    Membre Expert
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    1 252
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 252
    Par défaut
    Comme te l'as dit SpaceFrog, ta structure n'est pas correcte : tu confonds <th> et <td>. Alors, soit ce code est le tien, et tu devrais changer tous tes <th> par <td> et inversément, soit ce code n'est pas le tien, et on s'en tiendra à ça, mais ne sachant pas sur quel pied danser, nous ne savons t'aider.

    Edition : effectivement, SpaceFrog.

  11. #11
    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
    td pas tr ...


    sinon pour la collection..
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementsByTagName('table')[0].getElementsByTagName('th')
    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 !

  12. #12
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2006
    Messages : 69
    Par défaut
    Ok, bon, admettons que je me sois trompé, de toute facon, mon projet tombe a l'eau, car je ne sais meme pas si je travaille dans la bonne frame avec javascript.. alors... Je crois que je me suis lancé dans quelque chose d'un peu trop compliqué et comme je n'ai pas vraiment d'expert en extraction de données HTML par javascript, je vais aller me recoucher...

Discussions similaires

  1. pb envoi mail "Could not access 'CDO.Message' object"
    Par adaneels dans le forum ASP.NET
    Réponses: 3
    Dernier message: 07/05/2009, 15h29
  2. [DOM] DOM, InputStream, Object, Généric
    Par leblanc.philippe dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 20/01/2009, 16h48
  3. Could not access 'CDO.Message' object
    Par User.Anonymous dans le forum Général Dotnet
    Réponses: 1
    Dernier message: 11/12/2008, 01h32
  4. [DOM] Erreur : Object expected
    Par Studovy dans le forum Général JavaScript
    Réponses: 14
    Dernier message: 14/08/2007, 15h18

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