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 :

Balise <a> et identifiant


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    BiM
    BiM est déconnecté
    Expert confirmé
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Par défaut Balise <a> et identifiant
    Bonjour,

    Je n'arrive pas à récupérer un élément <A> qui possède un identifiant (id) en JavaScript.

    Voici un code exemple simplifié :
    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <html>
    	<head>
    		<script language="javascript">
    			function tester() {
    				alert(document.getElementById["boutonTest"]);
    			}
        		</script>
    	</head>
    	<body>	      							
    		<a id="boutonTest" onclick="javascript:tester();">Test</a>
    	</body>
    </html>

    Testé sous IE et Firefox.

    Une idée ?

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2009
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Février 2009
    Messages : 354
    Par défaut
    heu normalement une fonction s'appel via des parenthèses

    sinon, essaye de rajouter un 2 en argument comme ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    document.getElementById('lien', 2);

  3. #3
    Expert éminent

    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
    Par défaut
    Salut !
    une chtite erreur de syntaxe
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    alert(document.getElementById("boutonTest").innerHTML);
    Sans le "innerHTML", il va uniquement t'afficher [object]

    Sinon, pas de "javascript:" dans le code des évènements.

    A+

  4. #4
    Expert éminent

    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
    Par défaut
    @kimjoa : Effectivement, on peut tester des trucs, mais un 2° argument pour getElementById() ??

    A+

  5. #5
    BiM
    BiM est déconnecté
    Expert confirmé
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Par défaut
    Merci à vous 2 et honte à moi !

    En fait à la base, j'essayais un accès document.boutonTest, après j'ai essayé un getElementById pour récupérer effectivement avec une erreur de syntaxe.

  6. #6
    Expert éminent

    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
    Par défaut
    Citation Envoyé par BiM Voir le message
    j'essayais un accès document.boutonTest
    Il y a 2 méthodes à privilégier pour accéder à un élément de la page :
    • Dans une logique de formulaire (accès via une "collection") :
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      document.forms['name_du_form'].elements['name_element']
      (l'élément doit être dans le form et les 2 doivent avoir un name)
      NB : d'autres syntaxes existent, mais offrent moins de souplesse (names dynamiques, par ex.) ou posent des problèmes de compatibilité ...

    • Dans tous les cas :
      Code : Sélectionner tout - Visualiser dans une fenêtre à part
      document.getElementById('id_element')
      (il est préférable d'utiliser l'id autant que possible, car c'est le seul attribut garanti unique dans toute la page => donner un id à tout élément susceptible d'être appelé via Javascript)

    A+

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2009
    Messages
    354
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Février 2009
    Messages : 354
    Par défaut
    en faite me suis tromper E.Bzz, c'est pas sur getElementById que le 2 est nécessaire pour IE (en faite), mais pour accéder a certain attribut que voici

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    attributesURI = {
        'action': 2, 
        'cite': 2, 
        'codebase': 2, 
        'data': 2,
        'href': 2,
        'longdesc': 2, 
        'lowsrc': 2,
         'src': 2, 
        'usemap': 2
      };
    par exemple testé sous ie6

    <a href='#' id='test'>lien</a>
    <script type="text/javascript">
    alert(document.getElementById('test').href);
    alert(document.getElementById('test').getAttribute('href'));
    alert(document.getElementById('test').getAttribute('href', 2));
    </script>

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

Discussions similaires

  1. [RegEx] Identifier des balises
    Par Neuromancien2 dans le forum Langage
    Réponses: 0
    Dernier message: 10/02/2010, 00h29
  2. [RegEx] Identifier toutes les balises <a href >
    Par glycerine dans le forum Langage
    Réponses: 11
    Dernier message: 25/11/2009, 08h42
  3. Espace non identifié dans une balise LI sur IE7
    Par BLACKFIRE972 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 13
    Dernier message: 03/09/2009, 13h48
  4. Identifier las balises dans un fichier xml
    Par maroua_mm dans le forum Qt
    Réponses: 1
    Dernier message: 18/08/2009, 11h11
  5. identifiant unique pour une balise form_remote_tag
    Par dancingmad dans le forum Ruby on Rails
    Réponses: 2
    Dernier message: 02/07/2009, 09h55

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