2013-08-16 8 views
5

Ich habe eine Tabelle mit einem Kontrollkästchen am Anfang jeder Zeile. Jedes Kontrollkästchen hat die ID #tablecheckbox. Die Tabellenkopfzeile hat ein Prüfsymbol, das alle in der Tabelle eingerahmten Elemente überprüfen soll. Wie kann ich das mit jQuery machen?Wie kann ich mehrere Kontrollkästchen in jQuery aktivieren?

+0

Was haben Sie schon versucht? –

+5

^^ und IDs sollten eindeutig sein. – dc5

+0

Machen Sie Ihre IDs zu einer Klasse, dann folgen Sie diesem Link: http://StackOverflow.com/Questions/426258/How-Do-I-Check-Acheckbox-with-Jquery-oder-Javascript?RQ=1 – bfavaretto

Antwort

3

Hier head_checkbox ist id von Top-Header und Person Klasse alle Zeile Checkbox

$('#head_checkbox').on('change', function() { 
      if ($(this).is(':checked')) { 
       $('.person').attr('checked', true); 
      } else { 
       $('.person').attr('checked', false); 
      } 
     }); 

     $('.person').click(function() { 
      var total_length = $('.person').length; 
      var total_checked_length = $('.person:checked').length; 

      if (total_length == total_checked_length) { 
       $('#head_checkbox').attr('checked', true); 
      } else { 
       $('#head_checkbox').attr('checked', false); 
      } 
     }); 
+1

Live ist veraltet seit 1.7 on() sollte stattdessen verwendet werden – DGS

1
 $('#head_checkbox').click(function() { 
      if ($(this).is(':checked')) { 
       $('.person').attr('checked', true); 
      } else { 
       $('.person').attr('checked', false); 
      } 
     }); 


     $('.person').click(function() { 
      if ($('.person').length == $('.person:checked').length) { 
       $('#head_checkbox').attr('checked', true); 
      } else { 
       $('#head_checkbox').attr('checked', false); 
      } 
     }); 
Verwandte Themen