jQuery**を使って、checkbox
にチェックを入れるために、このようなことをしたいと思っています。
$(".myCheckBox").checked(true);
または
$(".myCheckBox").selected(true);
そのようなものは存在するのでしょうか?
.prop()`]1を使用します。
$('.myCheckbox').prop('checked', true);
$('.myCheckbox').prop('checked', false);
1つの要素だけを扱うのであれば、常に基礎となる HTMLInputElement
にアクセスし、その .checked
プロパティを変更することができます。
$('.myCheckbox')[0].checked = true;
$('.myCheckbox')[0].checked = false;
この方法ではなく、.prop()
や.attr()
メソッドを使用する利点は、マッチしたすべての要素に対して操作できることです。
.prop()メソッドは使用できないので、[
.attr()`]4を使用する必要があります。
$('.myCheckbox').attr('checked', true);
$('.myCheckbox').attr('checked', false);
これは バージョン 1.6 以前の jQuery のユニットテストで使用されていたアプローチ であり、$('.myCheckbox').removeAttr('checked');
を使用するよりも望ましいことに注意してください。後者は、ボックスが最初にチェックされていた場合、それを含むすべてのフォームで .reset()
の呼び出しの動作を変更することになります。
1.5.xから1.6への移行に伴うchecked
属性/プロパティの扱いの変更については、version 1.6 release notesや、.prop()
documentationのAttributes vs. Propertiesセクションに、より詳しい文脈が記載されています。
することができます。
$('.myCheckbox').attr('checked',true) //Standards compliant
または
$("form #mycheckbox").attr('checked', true)
チェックボックスのonclickイベントに、起動させたいカスタムコードがある場合は、代わりにこちらを使用します。
$("#mycheckbox").click();
属性を完全に削除することでチェックを外すことができます。
$('.myCheckbox').removeAttr('checked')
このようにすべてのチェックボックスをチェックすることができます。
$(".myCheckbox").each(function(){
$("#mycheckbox").click()
});