如何在Jquery中选中checkbox时收听

我需要知道当页面上的任何checkbox被选中时:

例如

<input type="checkbox"> 

我在JQuery中试过

 $('input type=["checkbox"]').change(function(){ alert('changed'); }); 

但它没有工作,有什么想法?

使用change()事件和is()testing:

 $('input:checkbox').change( function(){ if ($(this).is(':checked')) { alert('checked'); } }); 

我已经更新了以上内容,因为我愚蠢地依赖于jQuery(在if )何时DOM属性同样适用,而且使用起来也更便宜。 此外,select器已经被更改,以便允许它在支持它的浏览器中传递给DOM的document.querySelectorAll()方法:

 $('input[type=checkbox]').change( function(){ if (this.checked) { alert('checked'); } }); 

为了完成,在普通的JavaScript中同样的事情也很容易实现:

 var checkboxes = document.querySelectorAll('input[type=checkbox]'), checkboxArray = Array.from( checkboxes ); function confirmCheck() { if (this.checked) { alert('checked'); } } checkboxArray.forEach(function(checkbox) { checkbox.addEventListener('change', confirmCheck); }); 

参考文献:

  • JavaScript的:
    • Array.from()
    • Array.prototype.forEach()
    • document.querySelectorAll()
    • EventTarget.addEventListener()
  • jQuery的:
    • :checked
    • change()
    • is()
 $('input:checkbox').live('change', function(){ if($(this).is(':checked')){ alert('checked'); } else { alert('un-checked'); } }); 

jsfiddle: http : //jsfiddle.net/7Zg3x/1/

 $('input:checkbox').change(function(){ if($(this).is(':checked')){ alert('Checked'); } }); 

这里是一个演示

尝试这个

 $('input:checkbox').change(function(){ if(this.checked) alert('checked'); else alert('not checked'); }); 
 $("input:checkbox").change(function(){ alert($(this).val()); }); 

这里是小提琴http://jsfiddle.net/SXph5/

jquery change

 $("input[type='checkbox']").click(function(){ alert("checked"); }); 

只是一个正常的.click会做。