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

jQuery Discussion :

Modifier l'action d'un bouton en jQuery


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Pecose
    Homme Profil pro
    Batiment
    Inscrit en
    Février 2013
    Messages
    311
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Batiment
    Secteur : Bâtiment

    Informations forums :
    Inscription : Février 2013
    Messages : 311
    Par défaut Modifier l'action d'un bouton en jQuery
    Je veux modifié dynamiquement l'action d'un bouton:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    $("#action1").click(function(){
    $('.bouton').attr('id', 'action2');
    //action specifique à l'action1			
    });
     
    $("#action2").click(function(){
    $('.bouton').attr('id', 'action3');
    //action specifique à l'action2				
    });
     
    $("#action3").click(function(){
    $('.bouton').attr('id', 'action1');
    //action specifique à l'action3				
    });
    Le bouton en question:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="button" value="Valider" class="bouton" id="action1"/>
    Je ne pence pas pouvoir utiliser de Toggle vu que j'ai plus de deux actions différentes sur le même bouton.

    Le problème de ce code, c'est qu'a partir du deuxième bouton ca ne marche plus. Je pence que l'action2 n'est pas reconnu, n'existant pas dans le code d'origine...

    Si vous avez une solution c'est avec plaisir.

  2. #2
    Rédacteur

    Avatar de danielhagnoul
    Homme Profil pro
    Étudiant perpétuel
    Inscrit en
    Février 2009
    Messages
    6 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 6 389
    Billets dans le blog
    125
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input class="myBtn" type="button" data-action="action1" value="Valider">
    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
    $( "input.myBtn" ).on( "click", function(){
     
    	switch( $( this ).data( "action" ) ){
    		case "action1" : 
    			$( this ).data( "action", "action2" )
     
    			// code action 1
     
    			// debug
    			console.log( "cas1" );
    			break;
    		case "action2" : 
    			$( this ).data( "action", "action3" )
     
    			// code action 2
     
    			// debug
    			console.log( "cas2" );
    			break;
    		case "action3" : 
    			$( this ).data( "action", "action1" )
     
    			// code action 3
     
    			// debug
    			console.log( "cas3" );
    			break;
    		default :
    			$.error( "Ce cas ne doit jamais se produire !" );
    	}
    });

    Blog

    Sans l'analyse et la conception, la programmation est l'art d'ajouter des bogues à un fichier texte vide.
    (Louis Srygley : Without requirements or design, programming is the art of adding bugs to an empty text file.)

  3. #3
    Membre éclairé Avatar de Pecose
    Homme Profil pro
    Batiment
    Inscrit en
    Février 2013
    Messages
    311
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Batiment
    Secteur : Bâtiment

    Informations forums :
    Inscription : Février 2013
    Messages : 311
    Par défaut
    Sachant que je suis sur Chrome, j'ai du faire quelques petites modifications sur le code jQuery pour que ca marche chez moi:

    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
     
    $(".myBtn").click(function(){
    	switch( $(this).data("action") ){
    		case "action1" : 
    			$(this).data("action", "action2");
                            // code action 1
    			// debug
    			console.log( "cas1" );
    			break;
    		case "action2" : 
    			$(this).data("action", "action3");
    	                // code action 2
    	                // debug
    			console.log( "cas2" );
    			break;
    		case "action3" : 
    			$(this).data("action", "action1");
    	                // code action 3
    	                // debug
    		        console.log( "cas3" );
    			break;
    		default :
    			$.error( "Ce cas ne doit jamais se produire !" );
    	}
    });

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

Discussions similaires

  1. [TinyMCE] Modifier l'action d'un bouton
    Par juju.92 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 19/10/2013, 11h41
  2. modifier l'action du bouton close de windows de mon application
    Par riadhhwajdii dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 09/10/2009, 11h16
  3. Modifier l'action d'un bouton
    Par Beho Double dans le forum Firefox
    Réponses: 1
    Dernier message: 18/04/2009, 18h10
  4. Modifier l'action du bouton fermer d'un état
    Par kebab666 dans le forum IHM
    Réponses: 7
    Dernier message: 19/02/2008, 08h50
  5. [Flash MX] Action sur un bouton
    Par WriteLN dans le forum Flash
    Réponses: 9
    Dernier message: 20/10/2003, 14h01

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