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 :

r�ciproque de getElementsById


Sujet :

JavaScript

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    44
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 44
    Par d�faut r�ciproque de getElementsById
    Bonjour,

    Je viens avec une question sans doute simple mais que je ne parviens pas � traiter.

    Via getElementsByTagName je r�cup�re une liste d'objets ayant par exemple pour balise p au sein d'un tableau T
    Je cherche ensuite � v�rifier si l'un des objets de cette liste (par exemple T[0] ) poss�de par exemple l'id "truc".

    Et l�, je bloque car une comparaison de T[0] avec l'objet r�sultant de document.getElementById("truc") ne fonctionne pas.
    Ex :
    if( T[0]==document.getElementById("truc") ){...}

    En d'autres, il me faudrait la r�ciproque de getElementsById
    Par avance, merci de vos lumi�res

  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
    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 Expert
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    D�tails du profil
    Informations personnelles :
    �ge : 57

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Par d�faut
    Salut,

    Etonn� par ce comportement j'ai �crit vite fait:
    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
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
      <script type="text/javascript">
        function doTTT() {
            var t = document.getElementsByTagName("P");
            if( t[0]==document.getElementById("id0") ){
              alert('test ok');
            } 
     
        }
      </script>
     
      </head>
      <body onload="doTTT();">
        <p id="id0">Test 00</p>
        <p id="id1">Test 01</p>
      </body>
    </html>
    et cela fonctionne chez moi pour IE8, FF, Chrome. Et cela me semble logique car il compare des r�f�rences � des noeuds. Par contre peut-�tre l'ordre de parcours de getElementsByTagName n'est il pas toujours celui attendu et donc l'indice ne serait pas de fait toujours t[0] ?

    ERE

  4. #4
    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
    a mon avis plusieurs id identiques sur la page ... ???
    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 !

  5. #5
    Membre Expert
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    D�tails du profil
    Informations personnelles :
    �ge : 57

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Par d�faut
    Avec plusieurs fois le m�me id, cela semble passer quand m�me :
    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
    <html>
      <head>
      <script type="text/javascript">
        function doTTT() {
            var t = document.getElementsByTagName("P");
            if( t[0]==document.getElementById("id0") ){
              alert('test ok');
            }
        }
      </script>
     
      </head>
      <body onload="doTTT();">
        <p id="id0">Test 00</p>
        <p id="id0">Test 00 bis</p>
        <p id="id1">Test 01</p>
      </body>
    </html>
    ERE

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    44
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 44
    Par d�faut
    Merci pour vos r�ponses utlra rapides

    Et bien, je viens de constater que le contraire ne fonctionne pas

    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
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
      <script type="text/javascript">
        function doTTT() {
            var t = document.getElementsByTagName("P");
            if( t[1]=!document.getElementById("id0") ){
              alert('test ok');
            } 
     
        }
      </script>
     
      </head>
      <body onload="doTTT();">
        <p id="id0">Test 00</p>
        <p id="id1">Test 01</p>
      </body>
    </html>
    Edit : Je retire : dans mon test rapide, j'ai fait une faute de frappe : =! au lieu de !=.
    D�sol�, donc cela marche.
    Conclusion : mon probl�me doit se situer ailleurs.. Il faut que je creuse. Merci, je reviendrai donner la cause de mon probl�me si je trouve.

  7. #7
    Membre Expert
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    D�tails du profil
    Informations personnelles :
    �ge : 57

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Par d�faut
    Par contre si on a une balise avec un name qui vaut l'id recherch� et qu'elle est plac�e avant celle cherch�e, l� IE va mettre son grain de sable et cela ne passera plus pour lui:
    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
    <html>
      <head>
      <script type="text/javascript">
        function doTTT() {
            var t = document.getElementsByTagName("P");
            if( t[0]==document.getElementById("id0") ){
              alert('test ok');
            }
        }
      </script>
      
      </head>
      <body onload="doTTT();">
        <input type="text" name="id0" />
        <p id="id0">Test 00</p>
        <p id="id1">Test 01</p>
      </body>
    </html>
    ERE

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    44
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 44
    Par d�faut
    Merci pour tout vraiment. Pb r�solu pour moi


    Je suis vraiment trop nouille. C'est l'appel de ma fonction initiale qui �tait d�fectueux

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Programmer une fonction r�ciproque
    Par bichou dans le forum MATLAB
    R�ponses: 4
    Dernier message: 20/06/2007, 15h34
  2. rotationel : ""fonction"" r�ciproque
    Par j.p.mignot dans le forum Math�matiques
    R�ponses: 13
    Dernier message: 14/11/2006, 22h53
  3. structures qui s'appellent r�ciproquement
    Par salseropom dans le forum C
    R�ponses: 12
    Dernier message: 27/03/2006, 17h40
  4. [Forms 6i] Relation Maitre Detail r�ciproque ?
    Par lafouine dans le forum Oracle
    R�ponses: 3
    Dernier message: 23/01/2006, 10h24
  5. Conversion de type r�ciproque.
    Par Moucoulin dans le forum C++
    R�ponses: 16
    Dernier message: 24/06/2005, 16h34

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