检查是否选中了复选框?

如何通过jQuery检查是否选中了复选框?

我可以只为元素添加ID或类并执行此操作吗?

if($('#element').val() == 1) { //do stuff } 

 if($('#element').is(':checked')){ //checkbox is checked } 

要么

 if($('#element:checked').length > 0){ //checkbox is checked } 

或者在jQuery 1.6+中:

 if($('#element:checked').prop('checked') === true){ //checkbox is checked } 

这取决于你试图这样做的地方。 一般来说你可以做到:

 $('#element').is(':checked'); 

要么

 $('#element')[0].checked; 

要么

  $('#element').prop('checked'); 

不支持prop的旧版本的jquery(<1.6),attr用于执行prop的工作以及设置/重置元素的属性(包括已检查,选中,禁用等独立属性...);

  $('#element').attr('checked') //will return boolean value 

如果它位于复选框的上下文中,如果在change事件中,您可以执行以下操作:

  this.checked 

使用元素的id或类是完成所有这些的好方法,但由于我们使用的是jQuery,您可以使用它们的API,这里是解决方案:

 $('input[type="checkbox"]').is(':checked') { // do the stuff here.. } 

您也可以使用#element而不是input[type="checkbox"]'

这样,您就可以知道复选框已选中。