11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

J'ai une liste boutons radio, avec pour chacun le label associé.
J'aimerais que lorsqu'un bouton radio soit coché, un style soit appliqué au label.

Est-ce possible à faire de manière simple ?
Merci Smiley smile
Modifié par Ericf (27 Jul 2009 - 19:49)
Quelque chose dans le genre?
var selectedClass = "selected";
$("input:radio").click(function(){
  $("." + selectedClass).removeClass(selectedClass);
  $(this).next().addClass(selectedClass);
});
Et si les input et les label ne sont pas frères adjacents (ou s'ils le sont mais que tu souhaites rendre ton code plus portable), tu peux procéder de la sorte:
var selectedClass = "selected", labels = $("label");
$("input:radio").click(function(){
  var targetLabel = labels.filter("[for=" + $(this).attr("id") + "]");
  if (targetLabel.hasClass(selectedClass)) return;
  labels.filter("." + selectedClass).removeClass(selectedClass);
  targetLabel.addClass(selectedClass);
});

Modifié par Benjamin D.C. (27 Jul 2009 - 16:06)
J'ai failli dire que ça ne marchait pas, mais j'ai juste omis de modifier le nom de ma classe pour l'adapter à cet exemple...

Donc, c'est parfait, merci beaucoup Smiley biggrin