2009-12-23 5 views
0
<label>Hatchback <input type="checkbox" name="" /></label> 
<label>Bike  <input type="checkbox" name="" /></label> 
<label>Sedan  <input type="checkbox" name="" /></label> 
<label>Scooter  <input type="checkbox" name="" /></label> 
<label>Coupe  <input type="checkbox" name="" /></label> 
<label>SUV  <input type="checkbox" name="" /></label> 

Je voudrais saisir le texte dans les étiquettes et les appliquer comme noms de classe.Noms de classes dynamiques (jQuery)

Cela ne fonctionne pas:

var classname = $("fieldset.visual label").text(); 
$("fieldset.visual label").addClass(classname); 

Répondre

4

Utilisez chacun pour appliquer uniquement le texte à cette étiquette spécifique en tant que classe.

$('fieldset.visual label').each(function() { 
    var className = $(this).text(); 
    $(this).addClass(className); 
}); 
+0

Presque parfait, juste une chose: possible de tout minuscule et supprimer des espaces si trouvé? Merci beaucoup! – 3zzy

+0

Ou peut-être simplement utiliser le premier mot, si c'est plus facile à coder? – 3zzy

+1

'className.toLowerCase()' et 'className.replace (//g, '')' pour se débarrasser des espaces. –

Questions connexes