Jquery itérer sur toutes les cases à cocher et Supprimer une classe

voix
6

Je suis actuellement en utilisant jQuery et je voudrais un peu d'aide sur itérer tous « vérifiés » cases à cocher et de supprimer une classe (appelée « new_message ») de la ligne de table parent.

J'ai un concept de base, mais je ne peux pas comprendre tout à fait la chose entière dehors.

Voici ce que je suis actuellement en utilisant:

$(#unread_button).click(function (event) {
event.preventDefault;
$(:checkbox:checked).each( 
function() 
{ 
    if (this.checked) 
    { 
        var divs = $.makeArray($(this).parents(tr).attr(id));
     }
$(divs).each(
    function(int)
        {
            $(this).removeClass(new_message);
        }
    );
  });  
});

Finalement, ce sera de mettre à jour une base de données, donc si le code peut être adapté pour accueillir les deux, ce serait génial.

Toute orientation est très appréciée!

Créé 21/07/2009 à 23:24
source utilisateur
Dans d'autres langues...                            


2 réponses

voix
4
$("input:checked").each(function() {
    $(this).removeClass("new_message");
}

supprimera la catégorie concernée les cases elles-mêmes, de sorte

$(this).parent....

devrait travailler en fonction de ce que votre HTML ressemble

Créé 21/07/2009 à 23:30
source utilisateur

voix
6

Je pense que cela va fonctionner:

$('input:checkbox:checked').parents('tr').removeClass('new_message');

Ou si elle est seulement le parent TR directe que vous voulez faire correspondre, alors ceci:

$('input:checkbox:checked').closest('tr').removeClass('new_message');

jQuery fait tout le looping pour vous afin que vous devriez avoir tous les each () es.

Une fois que vous utilisez le « : coché la case » sélecteur, vous devriez revérifier si l'élément est vérifié. Cela devrait limiter vos résultats de sélection seulement cochés.

Créé 21/07/2009 à 23:30
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more