私はjQueryのチェックボックスのチェックされたプロパティを参照しようとしています。私が参照した場合にのみ戻ってきます this
要素のイベントハンドラ内
$("#chkACCEPT").click ->
alert this.checked // returns true
alert $("#chkACCEPT").checked // returns undefined
2行目が戻るのはなぜですか undefined
?それはとても頭がおかしいようです。
回答:
回答№1は2それは jQuery
オブジェクト doesn "tは持っている .checked
財産だが純粋 DOM
オブジェクト そうです。
あなたが使いたいのであれば .checked
あなたは使うことができます this
または原住民を引っ張る DOM
からのオブジェクト jQuery
:
alert(this.checked) or alert ($("#chkACCEPT")[0].checked)
あるいはjQueryでは、 .prop() :
$(this).prop("checked"); // $("#chkACCEPT").prop("checked");
回答№2の場合は1
.checked
jqueryオブジェクトではなく、javascriptオブジェクトに関連付けられたプロパティです。 jqueryオブジェクトで使用するには、JSオブジェクトに変換してから使用する必要があります。 checked
プロパティ
$("#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
});