これは、これはjQueryを使っていないのに対し、クエリでチェックボックスのチェック状態を設定するコードが機能しないのはなぜですか?
document.getElementById("myCheckbox").checked = false;
を働く理由:
$("myCheckbox").attr("checked") = false;
これは、これはjQueryを使っていないのに対し、クエリでチェックボックスのチェック状態を設定するコードが機能しないのはなぜですか?
document.getElementById("myCheckbox").checked = false;
を働く理由:
$("myCheckbox").attr("checked") = false;
コードにはいくつか問題があります。まず、CSSの場合と同様に、セレクタを使用してjQueryの要素を選択します。だから、IDセレクタ
第二$("#myCheckbox")
のハッシュ(#
)を使用して、jQueryのは本当にプロパティを使用しますが、すべてのもののための方法はありません、この中にこの
$("myCheckbox")
をオンにする必要があります。 1つのパラメータを渡して値を取得し、2つを設定します。この場合、あなたもwant to be using prop
and not attr
です。だから、実行する必要があります:
$("#myCheckbox").prop("checked", false);
prop( "checked"、false)とattr( "checked"、false)の違いはありがたいです。 attrは私の元の質問に近いので、私はそれを良い答えとしてチェックしましたが、多分小道具は何とか良いですか? – user310291
私は私の答えでそれを正確に説明し、完全な詳細な説明にリンクさえしました。基本的に、あなたが持っているバニラJavaScriptコードは属性ではなく属性を変更しています。 jQueryの同等の機能は、私があなたに与えたものです。あなたが 'attr'との違いを完全に理解していない限り、常に' prop'を使います。あなたは、回答者自身が「小道具が行く道」であると認めたところで、あなたが受け入れた回答のコメントを読むこともできます。 「attr」はあなたの質問に近づくことはありませんが、それはあなたの答えに近づいただけです。 –
申し訳ありませんが、私はattrの間の違いを説明するリンクがあったことを認識しませんでした。ありがとう。 – user310291
あなたはmyCheckboxにidであることを示すために#
を逃している、また、あなたのように直接属性値を設定することはできません
$("#myCheckbox").attr("checked", false);
はまた、ドキュメントを参照してください:それは、2番目のパラメータとして値を渡しID Selector (“#id”)
それは変です。私はあなたの答えを落とす人でした。あなたの間違いを修正するためにこれを編集し、それを強調表示するコメントは削除されました。しかし、それは編集として表示されないので、私は "un-downvote"できません。 編集:私はあなたの郵便でタイプミスを修正し、ダウンボートを解除することができました。 –
最初の5分間で、あなたは編集として表示されているあなたの答えを編集することができます - それはうまくいきました、私はその最初の答えでdownvoteに値しました - とにかく行く小道具です。 – BrokenGlass
$("#myCheckbox").attr('checked','checked');
and
$("#myCheckbox").removeAttr('checked');
jqueryの
$("#myCheckbox").attr("checked" , true);
それとも
$("#myCheckbox").attr("checked" , false);
それをオフを使用してチェックボックスをチェックすることがあればうまくいきますあなたのチェックボックスはIDがseですid="myCheckbox"
すなわちmyCheckbox
にトンが、あなたのチェックボックスがmyCheckbox
に設定されたクラスすなわちclass="myCheckbox
"を持っているならば、
$("input:checkbox").attr("checked" , true); // or set false to uncheck
かチェックしたいか、使用してオフにした場合を使用するすべてのチェックボックスをチェックするには
$('.myCheckbox') // here . used to specify class name.
にあなたのセレクタを変更名前属性次に
$("input:checkbox[name='mychk']").attr("checked" , true); // if 'mychk' is name of the checkbox it'll be checked
$("#myCheckbox").attr("checked", "checked");
はあまりよくありません。
Googleの基本的な質問。このようなstackoverflowには何千もの質問があります。 –