Duda/Problema Jquery

banerplayer

Dada mi ignorancia en jquery me ha tocado buscar una función que seleccione/deseleccione todos los checkbox que tengo en mi vista.

Script en cuestion:

 $(document).ready(function(){
 
  $('.check').click(function(){
         $("input:checkbox").attr('checked', this.checked);
});
 
});

He aqui el problema:
- marco el primer checkbox para que se marquen todos los demás. FUNCIONA OK
- desmarco el primer checkbox para que se desmarquen todos. FUNCIONA OK
- ahora vuelvo a pulsar para marcarlos todos y no funciona y ahi se queda :S

Alguien me podria echar una manita y sabria decirme que hago mal?

B
$('#check_de_todos').click(function(){
         $('input:checkbox').prop('checked', $(this).prop('checked'));
});

Deberia funcionarte tal cual esto.

dentro del document.ready ofc

EDIT:

Deberias ponerle clases iguales a los checkbox que quieras manejar con la funcion y ponerlo en vez de 'input:checkbox'

1 respuesta
banerplayer

#2 wow! gracias ya me funciona! se ha quedado tal que así:

$('.check').click(function(){
      $('input:checkbox').prop('checked', $(this).prop('checked'));
    });
rockymaster

Además para los bindings yo usaría

$('.check').on('click', ...);

en lugar de

$('.check').click();

Te permite mayor flexibilidad ;)

Usuarios habituales