Bonjour,
Ca fait un bout de temps que je n'ai pas touché à du Jquery. Voir le rendu : http://www.bootply.com/8nrk3jKoj9
J'utilise Bootstrap, j'ai un code HTML petit (j'espere qu'il est bon…)
J'ai une liste d'image qui sont des radio (il y en a plus que deux)
1 2 3 4 5 6 7 8 9 10 | <div class="btn-group" data-toggle="buttons"> <label class="btn btn-default active"> <input checked="True" class="radioPicto" id="Type" name="Type" type="radio" value="LIV" /> <img src="http://i.imgur.com/lGI0LDX.png" alt="Livre" title="Livre" class="radioPictoType" /> </label> <label class="btn btn-default"> <input class="radioPicto" id="Type" name="Type" type="radio" value="LOG" /> <img src="http://i.imgur.com/YyPYvM4.png" alt="Logiciel" title="Logiciel" class="radioPictoType" /> </label> </div> |
Quand on clique sur un radio, on doit mettre la couleur de l'image en rouge (changer l'url de l'image) et les autres bleu (image par defaut)
J'ai fait ca :
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 | $(function () { $('input[type=radio]').change(function () { var urlImage = $(this) .closest('label') .find('img').prop("src") var urlFinale = '' if ($(this).closest('label').hasClass('active')) { urlFinale = 'http://i.imgur.com/PMpMWZN.png' console.log('oui') } else { urlFinale = 'http://i.imgur.com/YyPYvM4.png' console.log('non') } console.log(urlFinale) $(this) .closest('label') .find('img') .prop('src', urlFinale); }); }); |
Sauf que je sens que part dans un truc de fou… il doit avoir beaucoup plus simple mais je ne vois pas.
Mes pictos : http://imgur.com/a/GQtu3
+0
-0