选中/取消选中jQuery中的所有复选框

我对jQuery知之甚少,我还需要一个名为“select all”的复选框。 当我选中此复选框时,必须选中HTML页面中的所有复选框。 我怎样才能做到这一点?

我使用下面的代码,但它不能正常工作:

       // Listen for click on toggle checkbox $('#select-all').click(function(event) { if(this.checked) { // Iterate each checkbox $(':checkbox').each(function() { this.checked = true; }); } });      

我从blow链接下载jQ:

http://jquery.com/download/

下载压缩的生产jQuery 2.1.1

http://code.jquery.com/jquery-2.1.1.min.js

  
Check all

http://jsfiddle.net/9o3f01e0/

[这是我制作的小提琴] [1]

在页面底部添加脚本

 [1]: http://jsfiddle.net/zbjc0fpe/1/ 

尝试这样的事情。

 $('#select-all').click(function(event) { var checked = this.checked; $("input[type=checkbox]").each(function(){ $(this).prop('checked', checked); }); }); 

只是为了笑容和咯咯笑……其他答案找不到工作,但我喜欢以下方法的简洁性和可重用性……所以以防这有助于任何人:

 $(document).on('click','[data-toggle=checkAll]', function() { var $all = $(this), $targets = $( $all.data('target') ) ; $targets.prop('checked', $all.is(':checked') ); } 

使用上面的脚本,你可以在页面上拥有任意多个“checkAll”复选框……每个“check all”复选框只需指定一个不同的目标选择器:

  check all  option 1  option 2  check all 2  option 1  option 2