如何在jQuery中引用元素的checked属性?

如何在jQuery中引用元素的checked属性?,jquery,Jquery,我试图在jQuery中引用checkbox的checked属性。仅当我在元素的事件处理程序中引用this时,它才会返回: $("#chkACCEPT").click -> alert this.checked // returns true alert $("#chkACCEPT").checked // returns undefined 为什么第二行返回未定义的代码?这看起来太疯狂了。.checked是与javascript对

我试图在jQuery中引用checkbox的checked属性。仅当我在元素的事件处理程序中引用
this
时,它才会返回:

$("#chkACCEPT").click ->
  alert this.checked                   // returns true
  alert $("#chkACCEPT").checked        // returns undefined

为什么第二行返回未定义的代码?这看起来太疯狂了。

.checked
是与javascript对象关联的属性,而不是jquery对象。要在jquery对象上使用它,您需要将其转换为JS对象,然后使用
checked
property

 $("#chkACCEPT")[0].checked   
正确的方法是:

使用javascript:

$("#chkACCEPT").click(function(){
  console.log(this.checked); //return bool value
});
使用Jquery:

$("#chkACCEPT").click(function(){
  console.log($(this).is(':checked'));//return bool value
});

这是因为
jQuery
对象没有
.checked
属性,但是纯
DOM
对象有

因此,如果要使用
.checked
,可以使用
this
,或者从
jQuery
中提取本机
DOM
对象:

alert(this.checked)   or  alert ($("#chkACCEPT")[0].checked) 
或使用jQuery,使用

$(this).prop('checked'); // $("#chkACCEPT").prop('checked');