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 :

a href et disabled


Sujet :

JavaScript

  1. #1
    Membre du Club
    Inscrit en
    Janvier 2005
    Messages
    88
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 88
    Points : 46
    Points
    46
    Par défaut a href et disabled
    Bonjour a tous,

    J'utilise dans une jsp un lien sous la forme :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <a href="#" onClick="fonctionJavascript();this.disabled=true;"><img scr=""></a>
    Vous aurez deviné, je veux juste empêcher le multi clic sur ce lien mais je ne sais vraiment pas comment faire. J'ai donc essayer de avec un this.disabled et un setTimeOut mais ça ne fonctionne pas !! Certainement car dans ce cas, il n'y a pas de validation de formulaire.

    Si quelqu'un a une solution à me proposer... Et bien merci

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 109
    Points : 104
    Points
    104
    Par défaut
    Pas de c majuscule a onclick.

    Deux solution :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <a href="#" onclick="fonctionJavascript();this.disabled=true;"  style="cursor:pointer"><img scr=""></a>
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <a href="fonctionJavascript();this.disabled=true;"><img scr="" style="border-style:hidden"></a>

  3. #3
    Expert éminent sénior
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 649
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 649
    Points : 11 138
    Points
    11 138
    Par défaut
    bonjour,

    seuls les éléments d'un formulaire (input, textarea, select...) peuvent ête "disabled". Puisque ton lien est une image, fais comme ceci. Seul un clic sera permis :
    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
     
    [B]<html>
    <head>
    <title></title>
     
    <script type="text/javascript">
    <!--
    var clicAutorise = true;
    function clic()
    {
     if (clicAutorise)
     {
      alert("Coucou");
     
     }
     
     clicAutorise = false;
    }
     
    //-->
    </script>
     
    </head>
     
    <body>
     
    <img src="image.jpg" onclick="clic()" />
     
    </body>
     
    </html>

  4. #4
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Tu peux faire quelque chose dans le genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <a href="#" onclick="fonctionJavascript(this)">...</a>
    Et la fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    function fonctionJavascript(obj)
    {
       obj.onclick = myVoid;
    ...
       obj.onclick = fonctionJavascript;
    }
     
    function myVoid()
    {
       return;
    }
    A+
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 109
    Points : 104
    Points
    104
    Par défaut
    A oui, effectivement, le disabled fonctionne uniquement sur un élément de formulaire, j'ai pas tilté que tu l'utilisais sur un lien

    A mon sens, le plus propre serait de faire un truc du genre :
    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
     
    function fonctionJavascript(htmlElement){
        if(document.all) htmlElement.detachEvent('onclick', fonctionJavascript, false)
        else htmlElement.removeEventListener('click', fonctionJavascript, false)
     
        .
        .
        .
        reste de ta fonction...
        .
        .
        .
     
        if(document.all) htmlElement.attachEvent('onclick', function(){fonctionJavascript(htmlElement)}, false)
        else htmlElement.addEventListener('click', function(){fonctionJavascript(htmlElement)}, false)
    }
    Si tu as plusieurs fonctions attaché a un évènement, ça te permet de supprimer/ajouter uniquement la fonction qui t'intéresse.

    Par ailleurs, je te conseilles d'éviter de déclarer les évènement dans le html et de passer de préférence par addEventListener et attachEvent.

  6. #6
    Membre du Club
    Inscrit en
    Janvier 2005
    Messages
    88
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 88
    Points : 46
    Points
    46
    Par défaut
    Citation Envoyé par Auteur
    bonjour,

    seuls les éléments d'un formulaire (input, textarea, select...) peuvent ête "disabled". Puisque ton lien est une image, fais comme ceci. Seul un clic sera permis :
    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
     
    [B]<html>
    <head>
    <title></title>
     
    <script type="text/javascript">
    <!--
    var clicAutorise = true;
    function clic()
    {
     if (clicAutorise)
     {
      alert("Coucou");
     
     }
     
     clicAutorise = false;
    }
     
    //-->
    </script>
     
    </head>
     
    <body>
     
    <img src="image.jpg" onclick="clic()" />
     
    </body>
     
    </html>
    Je viens de me mettre cette fonction en place, enfin ce genre de verification sur les differents liens de ma page et ca fonctionne a merveille!!! Merci vraiment beaucoup !! Je vais continuer les tests pour verifier qu'il n'y a eu aucune regression de l'appli!

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

Discussions similaires

  1. a href disabled
    Par benhsaien dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 07/09/2011, 12h12
  2. [Struts] Paramètres d'un lien (href)
    Par lanoix dans le forum Struts 1
    Réponses: 4
    Dernier message: 09/04/2004, 15h03
  3. Couleur d'une JComboBox disabled
    Par ced dans le forum Composants
    Réponses: 6
    Dernier message: 06/01/2004, 15h33
  4. Erreur cannot focus a disabled or invisible window
    Par Andry dans le forum Composants VCL
    Réponses: 3
    Dernier message: 17/12/2003, 07h33
  5. [XMLRAD] XMLRAD V7 RC et base href
    Par Sylvain Leray dans le forum XMLRAD
    Réponses: 2
    Dernier message: 06/01/2003, 15h11

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