如何重置使用jQuery或纯JS的所有checkbox?

如何使用jQuery或纯JS重置文档中的所有checkbox?

如果你的意思是如何从所有的checkbox中删除'checked'状态:

$('input:checkbox').removeAttr('checked'); 

如果你想使用窗体的重置function,你最好使用这个:

 $('input[type=checkbox]').attr('checked',true); 

要么

 $('input[type=checkbox]').attr('checked',false); 

看起来像removeAttr()不能被form.reset()重置。

上面的答案不适合我 –

以下工作

 $('input[type=checkbox]').each(function() { this.checked = false; }); 

这确保所有checkbox都未选中。

在某些情况下,该checkbox可能会被默认选中。 如果要恢复默认select而不是设置为未选中,请比较defaultChecked属性。

 $(':checkbox').each(function(i,item){ this.checked = item.defaultChecked; }); 

我以前用过这个:

 $('input[type=checkbox]').prop('checked', false); 

似乎.attr和.removeAttr不适用于某些情况。

  $(":checkbox:checked").each(function () { this.click(); }); 

取消选中checkbox,将你的逻辑转向相反

正如Tatu Ulmanen所说,使用下面的脚本来解决这个问题

 $('input:checkbox').removeAttr('checked'); 

但是,正如Blakomen的评论所言,在版本1.6之后,最好使用jQuery.prop()来代替

请注意,在jQuery v1.6及更高版本中,您应该使用.prop('checked',false)来代替更大的跨浏览器兼容性

 $('input:checkbox').prop('checked', false); 

使用jQuery.each()时要小心,这可能会导致性能问题。 (另外,在这种情况下避免使用jQuery.find() ,而是使用each)

 $('input[type=checkbox]').each(function() { $(this).prop('checked', false); }); 

您可以select哪些div或部分页面可以选中checkbox,哪些不可以。 我遇到了在我的页面中有两个表单的情况,一个是预填充值(用于更新),另一个需要填充新鲜的。

 $('#newFormId input[type=checkbox]').attr('checked',false); 

这将只会使id为newFormId的窗体中的checkbox为未选中状态。

我用过那样的东西

 $(yourSelector).find('input:checkbox').removeAttr('checked'); 
 <!DOCTYPE html> <html lang="en"> <head> <title>Bootstrap Example</title> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> <script src="bootstrap/3.3.7/js/bootstrap.min.js"></script> </head> <body> <div class="container check"> <button class="btn">click</button> <input type="checkbox" name="vehicle" value="Bike">I have a bike<br> <input type="checkbox" name="vehicle" value="Car">I have a car<br> <input type="checkbox" name="vehicle" value="Bike">I have a bike<br> <input type="checkbox" name="vehicle" value="Car">I have a car<br> </div> <script> $('.btn').click(function() { $('input[type=checkbox]').each(function() { this.checked = false; }); }) </script> </body> </html>