111 votes

Comment gérer le changement de case à cocher en utilisant jQuery?

J'ai un code

<input type="checkbox" id="chk" value="value" />
<label for="chk">Value </label>
<br/>
<input type="button" id="But1" value="set value" />
<br />
<input type="button" id="But2" value="read checked" />

javascript:

$(document).ready(function () {
    console.log("Ready ...");
    registerHandlers();

    function registerHandlers() {
        $('#But1').click(function () {
            $('#chk').prop('checked', !$('#chk').is(':checked'));
        });
        $('#But2').click(function () {
            var chk1 = $('#chk').is(':checked');
            console.log("Value : " + chk1);
        });

        $('input[type="checkbox"]').change(function () {
            var name = $(this).val();
            var check = $(this).prop('checked');
            console.log("Change: " + name + " to " + check);
        });
    }
});

Comment gérer le changement de case à cocher à l'aide de jQuery ? J'ai besoin de mettre le gestionnaire de changer toutes les cases cochées.

[mise à jour]

Il y a une case à cocher et quelques boutons. Chaque bouton peut changer de case à cocher. Comment attraper un événement de modification de la case?

[Mise à jour]

J'ai besoin de gérer le changement de case à cocher dans cet exemple jsfiddle. Quand je clique sur la case, le message "OK" bouton n'est pas affiché.

169voto

Samich Points 17169

Utilisez le sélecteur :checkbox :

 $(':checkbox').change(function() {
    // do your staff here. It will fire any checkbox change
}); 
 

Code: http://jsfiddle.net/s6fe9/

70voto

Pinkesh Sharma Points 451

Vous pouvez aussi utiliser l'identifiant du champ

 $('#checkbox1').change(function() {
   if($(this).is(":checked")) {
      //'checked' event code
      return;
   }
   //'unchecked' event code
});
 

18voto

Lokesh Points 613

J'espère que cela pourrait vous aider.

 $('input[type=checkbox]').change(function () {
    if ($(this).attr("checked")) {
        //do the stuff that you would do when 'checked'

        return;
    }
    //Here do the stuff you want to do when 'unchecked'
});
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X