ブログBlog

jQueryでチェックボックスのchecked属性を操作

JQueryでチェックボックスのchecked属性を操作する際の注意事項。
JQueryでチェックボックスを操作する際に、.propを使って実装していたのですが、チェックボックスのオン・オフの表示はうまくいくものの、チェックボックスにchecked属性を付ける事ができませんでした。
今回は、その解決方法です。

残念ながら、jQueryでチェックボックスの操作や値を取得するのに、属性を操作する.attr()を使っても、.checked属性の取得や操作はできません。
チェックしてもchecked属性が付かなかったり、ブラウザが反応しなかった場合も考慮して、jQueryオブジェクトの.prop()と、change()を併用して実現します。

.prop()は、jQueryオブジェクトのプロパティです。.attr()と似ていますが、HTMLタグの属性を扱うわけではないので、使い方が異なります。
後からチェックを入れてもHTML上のチェックボックスには、check属性が付かない場合があるため、チェック有無を調べるには、.prop()を利用します。

 

1.チェックボックスの値を取得する。

値を取得するだけなら、.prop()が利用できます。

 

2.チェックを入れる・チェックを外す

チェックを入れる

 

チェックを外す

 

JavaScriptでチェックボックスを動的に操作した場合、ブラウザのUIが反応しない事があります。
そのため、.change()で強制的にイベントを発生させ表示するようにしています。

また、チェック状態の変更の際には.attr()でchecked属性の追加/削除も合わせて行なっておけば、トラブルを起こしにくくなります。
チェックを外す場合は.removeAttr(‘checked’)で属性を削除するようにしておきます。

 

3.実際の例(サンプル)

HTML文

 

jQuery(OKの時)

 

jQuery(NGの時):input[type=”checkbox”]にchecked属性が付かない。

 

自身の備忘録もかねて掲載させて頂きました。

WEB DESIGN

RishunTradingでは、日本にはないコンセプトや高いデザイン性をもったヨーロッパ製品の輸入販売、及び、Webサイト制作事業などをおこなっております。

「全てお任せ!ホームページ制作」は、ドメイン取得からサーバー設定、レスポンシブルデザイン(スマホ、タブレット対応)、SEO対策がすべて含まれたお得なホームページを制作するサービス商品です。

運用開始後に「Webサイト運用管理サービス(保守)」と組み合わせて購入しますと、メンテナンス、更新も含めてすべて弊社で実施しますので、お客様は安心して本業に集中する事ができます。

しかもなんと、「全てお任せ!ホームページ制作」は、¥100,000!で提供しております。

本業が忙しい中小企業様に大変ご好評を頂いている商品です。

  • 独自ドメイン取得

    独自ドメイン取得

  • サーバー開設&設定

    サーバー開設&設定

  • レイアウト設計

    レイアウト設計

  • レスポンシブルデザイン

    レスポンシブルデザイン
    (*1)

  • 検索エンジン最適化(SEO対策)

    検索エンジン最適化
    (SEO対策)

  • 場所Maps

    場所Maps

  • お問い合わせフォーム

    お問い合わせフォーム

  • SSL化

    SSL化

  • 各種SNS連携

    各種SNS連携

  • 運用マニュアル

    運用マニュアル

≫詳細はこちら

MENU