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 couleur de fond lors d'une sélection d'un radio bouton


Sujet :

jQuery

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2006
    Messages : 92
    Points : 61
    Points
    61
    Par défaut Modifier couleur de fond lors d'une sélection d'un radio bouton
    Bonjour,

    Tout est dans le titre :-)
    Etant débutant en javascript, j'aimerais avoir un peu d'aide la dessus.
    Là ça devient rouge quand je sélectionne mais ce qui a été sélectionné auparavant reste rouge, il faudrait resetter les couleurs avant la nouvelle sélection mais je ne vois pas comment faire.
    Voici mon code
    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
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
     
    <html>
    <head>
     
    <style>
    #petitcadre, .grandcadre
    {
        margin: 20px;
        position:relative;
        padding: 20px;
        background:#eeeeee;
        border:1px solid #bbbbbb;
        border-radius:10px;
        -moz-border-radius:10px;
        -webkit-border-radius:10px;
        text-align: center;
    }
    #petitcadre
    {
        height:100px;
        width:100px;
        float: left;
    }
    #grandcadre
    {
        height:200px;
        width:200px;
    }
    #cadre
    {
        float: left;
        position:relative;
        border:1px solid #bbbbbb;
    }
     
    </style>
     
    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
    <script>
    $(document).ready(function(){
        $('input:radio').change(function(){
           if($(this).is(":checked")){
           $(this).closest('div').css('background-color', 'red');
           }else
            {
                $(this).closest('div').css('background-color', 'black'); 
            }
        });
    });
     
    </script>
    </head>
    <body>
        <form id="formid">
                <div id="liste1">
     
                        <div id="petitcadre">
                            Option 1
                            <br><br><br><br>
                            <input type="radio" name="forme1" value="Option1">
                        </div>
     
                        <div id="petitcadre">
                            Option 2
                            <br><br><br><br>
                            <input type="radio" name="forme1" value="Option2">
                       </div>
                </div>
     
                <div id="liste2">
     
                        <div id="petitcadre">
                            Option 1
                            <br><br><br><br>
                            <input type="radio" name="forme2" value="Option1">
                        </div>
     
                       <div id="petitcadre">
                            Option 2
                            <br><br><br><br>
                            <input type="radio" name="forme2" value="Option2">
                       </div>
     
                </div>
     
        </form>
    </body>
    </html>
    merci !
    Geo

  2. #2
    Membre actif

    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2013
    Messages
    119
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2013
    Messages : 119
    Points : 203
    Points
    203
    Billets dans le blog
    1
    Par défaut
    l’évènement onchange se déclenche lorsque on click ou une touche clavier coche le radio ! donc si le radio est décoché autrement , l evenement ne se declenche pas et les couleurs ne sont pas RESET

    je vous propose une solution ( y a sans doute mieux) si qnd on change un radio on regarde les autres radion du meme groupe et on Reset la couleur du parent puis on mets l actuel en rouge comme ceci :

    la je reprends que la partie javacript de votre page
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    $(document).ready(function(){
        $('input[type="radio"]').change(function(){
          $('input[type="radio"][name='+$(this).attr("name")+']').closest("div").css("background","black");
    	  $(this).closest("div").css("background","red");
     
        });
    j espere que vous voyez l idee que je vous propose que vus pouvez améliorer a votre besoin precis

  3. #3
    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 : 73
    Localisation : Belgique

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

    Informations forums :
    Inscription : Février 2009
    Messages : 6 389
    Points : 22 933
    Points
    22 933
    Billets dans le blog
    125
    Par défaut
    Bonsoir

    Attention, un ID doit être unique !

    Exemple :

    Code css : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    .petitcadre {
        height: 100px;
        width: 100px;
        float: left;
        margin: 20px;
        position: relative;
        padding: 20px;
        background: #eeeeee;
        border: 1px solid #bbbbbb;
        border-radius: 10px;
        -moz-border-radius: 10px;
        -webkit-border-radius: 10px;
        text-align: center;
    }

    Il y a deux séries de boutons radios !
    Code html : 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
    <form id="formid">
    	<div id="liste1">
    		<div class="petitcadre">
    			Option 1
    			<br><br><br><br>
    			<input type="radio" name="forme1" value="Red">
    		</div>
    		<div class="petitcadre">
    			Option 2
    			<br><br><br><br>
    			<input type="radio" name="forme1" value="Blue">
    		</div>
    	</div>
    	<div id="liste2">
    		<div class="petitcadre">
    			Option 1
    			<br><br><br><br>
    			<input type="radio" name="forme2" value="Orange">
    		</div>
    		<div class="petitcadre">
    			Option 2
    			<br><br><br><br>
    			<input type="radio" name="forme2" value="Yellow">
    		</div>
    	</div>
    </form>

    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    $( function(){
    	$( "input[name^='forme']" ).change( function(){
    		var strCouleur = $( this ).val(),
    			jObjParent = $( this ).parent();
     
    		jObjParent.css( 'background-color', strCouleur );
    		jObjParent.siblings( "div.petitcadre" ).css( 'background-color', 'black' );
    	});
    });

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2006
    Messages : 92
    Points : 61
    Points
    61
    Par défaut
    Bonjour,

    je voulais vous remercier tous les 2.
    Ca m'a aidé dans la compréhension du jQuery.

    Bien à vous,

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

Discussions similaires

  1. Modifier couleur de fond d'une cellule d'un tableau dynamiquement.
    Par fred61 dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 27/03/2009, 02h19
  2. modifier dynamiquement le style lors d'une selection
    Par Sniper37 dans le forum Général JavaScript
    Réponses: 16
    Dernier message: 15/10/2007, 13h58
  3. Afficher un div lors d'une sélection
    Par Emotion dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 14/10/2007, 17h33
  4. Comment récuperer un élément dans une listview lors d'une sélection
    Par hellspawn_ludo dans le forum Windows Forms
    Réponses: 4
    Dernier message: 23/04/2007, 02h37
  5. Redirection automatique lors d'une sélection dans un Select
    Par MiJack dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 21/12/2004, 18h09

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