私は異なるrel値を持つチェックボックスのリストを持っています。私の次のjqueryコードは私に未定義を与えています。Jquery .eachを使用してrel属性を取得
var checked_keys=[];
$("input[type='checkbox']:checked").each(function(index, value){
checked_keys.push(value.attr('rel'));
});
ただし、「this」を使用すると動作します。
var checked_keys=[];
$("input[type='checkbox']:checked").each(function(){
checked_keys.push($(this).attr('rel'));
});
誰かが$(この)と値と.eachと.eachの違いは何で説明できますか?
あなたは 'value'ではなく' $(value) 'を試しましたか? jQuery要素ではなく、javascript要素を返すときの値になる可能性があります。 '$(" input [type = 'checkbox']:checked ")[0]'はjavascript要素を返します。 – Kishor
'value'と' this'はプレーンなDOM要素のObjectであり、Jqueryオブジェクトではありません。 '$(値)=== $(これ)'と '値===これ 'です。 jQueryオブジェクトを再作成することは、単純な操作がターゲットであれば高価になる可能性があります。また、map関数のために 'value.getAttribute(" rel ")' – Aukhan