速報

StrandsのA2Aサーバーで会話履歴が混在|SDK更新と利用者分離を確認

CATEGORY

【JavaScript】チェックボックスの「その他」選択で入力欄を表示する

※本ページのリンクにはプロモーションが含まれています。

【JavaScript】チェックボックスの「その他」選択で入力欄を表示する

目次

本記事では、JavaScriptでチェックボックスの「その他」を選択した際にテキストフィールドの入力欄を表示する方法をご紹介しています。

JavaScriptでチェックボックスの「その他」を選択したときに入力欄を表示したいな。良い方法ないかな?

上記の疑問にお答えします。

では、解説していきます。

スポンサーリンク

本記事で作成するもの

チェックボックスの「その他」が選択された場合にその他の内容を入力するテキストフィールドを表示します。下記にデモを用意していますので、動画をご確認ください。

See the Pen 7440 by ryohei (@intotheprogram) on CodePen.

上記デモでは、テキストフィールドの表示・非表示の切り替えには要素のstyleプロパティを使用しています。classの追加・削除などでも実装できますので好みで変更してください。

チェックボックスの「その他」選択で入力欄を表示する

デモと同様にチェックボックスの「その他」を選択した際に入力欄を表示する処理を作成します。テキストフィールドは読み込み時は非表示にしておきたいため、CSSでdisplay: noneを指定します。JavaScriptでは、チェックボックスの「その他」がクリックされた場合にcheckedの状態を確認し、trueであればその他の入力欄を表示するようにします。

HTML

<form>
    <label>
        <input type="checkbox" name="framework[]" value="Angular">Angular
    </label>
    <label>
        <input type="checkbox" name="framework[]" value="React.js">React.js
    </label>
    <label>
        <input type="checkbox" name="framework[]" value="Vue.js">Vue.js
    </label>
    <label>
        <input id="other" type="checkbox" name="framework[]" value="その他">その他
    </label>
    <input id="text" type="text" name="other" value="" placeholder="その他入力欄">
</form>

CSS

#text {
    display: none;
}

JavaScript

const myFunc = ()=>{
    const text = document.querySelector('#text');
    const other = document.querySelector('#other');

    other.addEventListener('click', (e)=>{
        if(e.target.checked){
            text.style.display = 'block';

        } else {
            text.style.display = 'none';
        }
    }, false);
};
myFunc();

これでチェックボックスの「その他」が選択された場合にその他を内容を入力するテキストフィールドを表示することができます。

スポンサーリンク

最後に

チェックボックスの「その他」はアンケートフォーム等で取り入れることが多い選択肢です。「その他」と「その他入力欄」はセットで使われることが多いですが、「その他」が選択されなければ「その他入力欄」は必要がない項目です。「その他」が選択された場合に「その他入力欄」を表示させる方が見た目においてすっきりしますので、フォームを構築される場合に取り入れてみてくださいね。

以上、JavaScriptでチェックボックスの「その他」選択で入力欄を表示する方法のご紹介でした!

この記事を書いた人

Ryohei

Webエンジニア / アプリ開発者 / 技術ブログ運営者

福岡のWeb制作会社に勤務するWebエンジニアです。10年以上にわたりWeb制作・開発に携わり、ヒアリングや進行管理から、コーディング、CMSの構築、システム開発、サーバーの構築・保守・運用まで、Webサイト制作の工程を幅広く担当しています。Webサイトは、これまでに100以上の構築・保守を手がけてきました。

個人でもWebサイトの制作・改修やWebアプリの開発・運用を行い、AIを活用した開発にも取り組んでいます。近年はWebセキュリティにも注力しています。

2015年から技術メディア「Into the Program」を運営し、実務や開発で得た知識をもとに、プログラミングの実装方法やWebサイトの運用・セキュリティ情報を発信しています。

主な分野
Webサイト構築・保守・運用 / HTML/CSS / JavaScript / PHP / WordPress / サーバー構築・保守・運用 / アプリ開発 / セキュリティ対策
資格・試験合格
情報セキュリティマネジメント試験
基本情報技術者試験
AWS認定ソリューションアーキテクト アソシエイト
PHP8技術者認定ウィザード
メディア運営
2015年〜

記事の作成・更新について

セキュリティ記事は、ベンダーの公式アドバイザリやCVE・JVNなどの一次情報を参照し、出典と情報確認日を記載します。実環境での検証を行った場合は、その環境と確認範囲を明示します。重要な追加情報や誤りを把握した場合は、内容を確認して追記・訂正します。

関連する記事

おすすめの書籍

キーワードから探す

スポンサーリンク