チェックボックスの選択またはキャンセルを実装するJavaScript

チェックボックスの選択またはキャンセルを実装するJavaScript

この記事では、すべてのチェックボックスを選択または解除するためのJavaScriptの具体的なコードを参考までに共有します。具体的な内容は次のとおりです。

実装のアイデア

1. 選択ボックス全体とすべての小さな選択ボックス要素オブジェクトを取得します。
2. ボタン コントロールの小さなボタン - onclick イベントをメイン チェック ボックスにバインドし、イベント ハンドラー - for ループですべての小さなチェック ボックスを反復処理し、メイン チェック ボックスのチェックされた属性値をそれらに割り当てます。
3. 小さいボタンはメイン ボタンに影響します - - - for ループはクリック イベントを各小さいチェック ボックスにバインドし、クリックごとに for ループ内のすべてのチェック ボックスが選択されているかどうかを確認します。
メインボタンの選択状態を制御するために変数フラグを設定します。初期値は true です。for ループは反復して、各小さなチェックボックスの選択状態をチェックします。1 つが選択されていない限り、flag = false となり、break はループから抜け出し、後続の小さなチェックボックスの状態をチェックしなくなります。最後に、メインボタンのチェック済み属性値 = flag になります。

注: HTML では、選択状態はチェック済み = "チェック済み" ですが、JS では、選択状態は - - - チェック済み = true、未チェック状態は - - - チェック済み = false です。

提案:この種の属性値の場合、コンソールに出力して値を確認することができます。

コードサンプル

<!DOCTYPE html>
<html lang="ja">

<ヘッド>
    <メタ文字セット="UTF-8">
    <meta http-equiv="X-UA-compatible" content="IE=edge">
    <meta name="viewport" content="width=デバイス幅、初期スケール=1.0">
    <title>複数選択ボックス</title>
    <スタイル>
        。箱 {
            幅: 300ピクセル;
            マージン: 100px 自動;
        }
        
        スレッド {
            色: #fff;
            背景色: #008dd0;
        }
    </スタイル>
</head>

<本文>
    <div class="box">
        <表の境界線="1" セル間隔="0" セルパディング="5" 幅="200" 位置合わせ="中央">
            <頭>
                <tr>
                    <th><input type="checkbox" value="0" id="cbAll"></th>
                    <th>スポーツ</th>
                </tr>
            </thead>
            <tbodyid="tb">
                <tr>
                    <td><入力タイプ="チェックボックス" 値="1"></td>
                    <td>実行中</td>
                </tr>
                <tr>
                    <td><入力タイプ="チェックボックス" 値="2"></td>
                    <td>縄跳び</td>
                </tr>
                <tr>
                    <td><入力タイプ="チェックボックス" 値="3"></td>
                    ヨガ
                </tr>
                <tr>
                    <td><入力タイプ="チェックボックス" 値="4"></td>
                    <td>水泳</td>
                </tr>
                <tr>
                    <td><入力タイプ="チェックボックス" 値="5"></td>
                    サイクリング
                </tr>
            </tbody>
        </テーブル>
    </div>

    <スクリプト>
        var all = document.querySelector('#cbAll');
        var スポーツ = document.querySelector('#tb').querySelectorAll('input');

        // クリックイベントをすべて選択ボタンにバインドします all.onclick = function() {
            console.log(すべてチェック済み);
            (var i = 0; i < sports.length; i++) の場合 {
                スポーツ[i].checked = all.checked;
            }
        }

        // クリックイベントを各小さなチェックボックスにバインドします for (var i = 0; i < sports.length; i++) {
            スポーツ[i].onclick = 関数() {
                // すべて選択ボタンが選択されているかどうかを制御します var flag = true;
                // 小さなボックスがクリックされるたびに、すべてのチェックボックスがチェックされているかどうかを確認します (var i = 0; i < sports.length; i++) {
                    スポーツ[i]がチェックされている場合
                        フラグ = false;
                        break; // 小さなチェックボックスが 1 つ選択されていない限り、[すべて選択] ボタンは選択されず、ループから抜け出すことができます。次の小さなチェックボックスは再度判断する必要はありません。}
                }
                all.checked = フラグ;
            }
        }
    </スクリプト>
</本文>

</html>

ページ効果:

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • JSはチェックボックスをすべて選択したり一括削除したりする機能を実装します
  • JSは、チェックボックスをすべて選択、選択解除、または選択解除する機能を実装します。
  • JSはCheckBoxですべて選択およびすべて選択解除する機能を実装します
  • js と jQuery を使用してすべてのチェックボックスを選択/選択解除する方法
  • jsはすべてのチェックボックスを選択または選択解除する効果を実現します
  • チェックボックスの全選択と逆選択を実現する js html css
  • チェックボックスの全選択と逆選択イベントを実装する JavaScript の詳細な説明
  • javascript チェックボックスの選択/すべての特殊効果を選択
  • チェックボックスの全選択機能をJSで実装する方法
  • JavaScript に基づいてすべてのチェックボックスを選択または選択解除する

<<:  MySQLでテーブルを接続するいくつかの方法

>>:  Nginx + consul + upsync を使用して動的負荷分散を実現する方法の詳細な説明

推薦する

webpack -v エラー解決

背景webpackのバージョンを確認したいのですが、webpack -vを実行するとエラーが報告され...

Javascript を使用して、スライドバー効果のあるスライドナビゲーション プラグインを開発します。

目次1. はじめに2. 使用方法3. 開発プロセス1. モデル例2. イベントとアニメーション4. ...

MySQLのバージョンアップ方法を超詳しく解説

目次1. はじめに2. データベースをバックアップする3. オリジナルのMysqlをアンインストール...

MySQL 8.0 の binlog の詳細な説明

1 はじめにバイナリ ログは、データを持つ、またはデータを変更する可能性がある SQL ステートメン...

mysql 5.7.11 winx64.zip インストールと設定方法のグラフィックチュートリアル

MySql データベース システムをインストールして構成します。 1. ダウンロード http://...

HTML ページの部分更新の実装コード

イベント応答の更新: 要求されたときのみ更新1. JS HTML DOM または jQuery を介...

MySQL での正規表現の使用に関する詳細

目次1. はじめに2. 製品テーブルを準備する2.1 ステートメントの順序2.2 大文字と小文字の区...

仮想マシンに Linux rhel7.3 オペレーティング システムをインストールする (具体的な手順)

仮想化ソフトウェアをインストールする仮想マシンにオペレーティング システムをインストールする前に、ホ...

MySQL サブクエリとグループ化されたクエリ

目次概要サブクエリサブクエリの分類クエリの結果によるとサブクエリの位置で区別する選択後のサブクエリサ...

Linuxでディスクをマウントする方法

仮想マシンを使用しているときに、ディスク容量が不足し、継続使用するためにディスクをマウントする必要が...

CSS3 は本当に SCSS に取って代わるのでしょうか?

Web ページのスタイル設定に関しては、プロジェクトで純粋な CSS または SCSS (および他...

2 つの Linux サーバー間の自動ファイル同期

サーバーB(172.17.166.11)の電源がオンまたは再起動されると、サーバーA(172.17....

IDEA を MYSQL データベースに接続するための構成時に失敗する問題の解決策

この記事では、主に、IDEA を MYSQL データベースに接続するための構成時に失敗する問題の解決...

AES_ENCRYPT() と AES_DECRYPT() を使用して MySQL を暗号化および復号化する正しい方法の例

序文最近、仕事でAES_ENCRYPT()関数を使用してプレーンテキストを暗号化し、MySQL に保...

Linux環境でのDockerインストールチュートリアル

1. 設置環境Dockerは次のCentOSバージョンをサポートしていますCentOS 6.5 (6...