2009-08-06 9 views
4

J'ai du code que je souhaite exécuter sur chaque case de ma page, mais je ne suis pas sûr de la meilleure façon de procéder. J'ai essayé quelque chose comme ça, mais ça n'a pas fonctionné :(Exécution d'une fonction sur plusieurs éléments à l'aide de Jquery

$(document).ready(function() { 

    function whatever (elem) { 
     var $elem = elem; 
     $elem.val('test'); 
    } 

    $('table tr td :checkbox').(function() { 
     whatever($(this)); 
    } 

}); 

Toute aide serait fantastique, à un peu de perte avec ça! Merci de

+3

Vous pouvez sélectionner une réponse comme réponse correcte en cliquant sur la coche. –

Répondre

8

Utilisez le .each de $() ;

$.each($('table tr td :checkbox'), function() 
    { 
     // Code 
    }); 

Pour accéder à la case à cocher sur laquelle vous travaillez actuellement, utilisez ceci.

$.each($('table tr td :checkbox'), function() 
    { 
     $(this).hide(); 
    }); 
+0

Ahh ça a l'air génial, merci! Je vais essayer cela :) –

1

Vérifier $().each().

Et en passant, foo.(bar) n'est pas une syntaxe Javascript valide.

+0

Merci pour l'info, désolé d'être stupide mais pouvez-vous expliquer où j'ai utilisé le truc. (Barre) s'il vous plaît? Merci :) –

+0

En fait, il est bon que vous demandiez :). Dans ce qui suit (copié de votre code, réarrangé pour tenir sur une seule ligne): '$ ('table tr td: case à cocher'). (Function() {quelquechose ($ (this));}'. Dans ce cas ' foo' est '$ ('...')' et 'bar' est' function() {...} '. –

+0

Ahh! et 'bar' et ne comprenaient pas ce qu'ils signifiaient jusqu'ici! –