IT関連

JavaScript チェックボックスのオンオフ切り替え複数の親子を連動させる

投稿日:2019年7月3日 更新日:

親のチェックボックスをオンにすれば、複数ある子のチェックボックスがオンになり、オフにすればオフになる。

そんなコントロールは調べたらすぐ見つかったが、複数の親がある場合に悩んだので備忘録。

 

例えば、

自動車という親、TOYOTA・HONDA・NISSAN・MATSUDAという子

パソコンという親、Apple・Lenovo・SHARPという子

モニタという親、IO-DATA・IIYAMA・LGという子

それぞれが1つの画面上にチェックボックスとして存在する場合。

 

自動車の親にaddEventListenerでクリックイベントを追加してクラスを付けた子のチェックをオンオフするロジックは簡単だけど、それぞれの親すべてに同じ処理を書くのは無意味なのは解る。

 

考えたやり方は、まず親のチェックボックスID属性を付与し、onclickでファンクションを付与する。その引数はID属性の値と同じにする。ファンクション名は今回は適当に、js_check_toggleにする。

 

親の参考コードは

こんな感じ。複数親だから、当然DBからデータを取得してループ文でガンガン吐き出すのだから当然変数Aは変化する。

 

子のinputはクラス名を変数Aにする。

こんな感じ。子は複数あるのでID属性ではなくclass属性にする。

これももちろんDBからデータを取得してループ文でガンガン書き出すという前提です。

 

最後にJavaScriptは

 

これでいけた。

スポンサーリンク




スポンサーリンク




-IT関連
-, ,

執筆者:


comment

Your email address will not be published. Required fields are marked *

関連記事

Laravel 値をViewテンプレートに渡す

MVCで値が渡っていく流れがよく解らなかったので忘備録。 モデルは含まれません。   コントローラーからViewに渡す アクセス [crayon-5f6590f3a3a8b714804229 …

MacでプリンタドライバーCanonLBP8610を設定する

自分用の備忘録なので適当です。Windowsしか設定したことがなくハマったので残しておきます。   まずはメーカーのHPからドライバーをダウンロードする。   Windowsはイン …

AS400/IBMi 無料でWeb化 GUI化 オープン化 Linuxサーバ構築編 3/3

最後の難関。Linuxサーバの構築編3/3(CentOSインストールからODBC接続まで)です。   サーバにCentOSをインストール 表題はサーバになっていますが、今回は動くかどうかのテ …

Amazonアソシエイトリンクを横に並べる方法

今回の記事は私の備忘録みたいなものです。   Amazonのアソシエイトリンクって縦長の小さいやつ。 あれを複数並べたときに縦並びになるので、それを横並びにしたいという話。   [ …

Git SourceTreeでファイル名の大文字・小文字を検知

SourceTreeでGitを使っていて、ソースはもちろんのことファイル名を変更したときでも、変更を検知してくれるのだが、ファイル名の小文字を一部大文字にしただけでは検知されなかったので備忘録。 &n …

Adsense広告




文字で検索

人気記事

なぜだか人気記事

読んでほしい順に