Written by Kasumi

disabledを使って任意のinput要素を入力無効にする方法【条件判定で解除する】

form内の一部のinput要素を入力無効にしたい。

ある条件判定があったら無効を解除したい。

本記事ではJavaScriptを使ってこのような悩みを解決します。

実装サンプル

See the Pen
Untitled
by Kohei (@kouk05)
on CodePen.0

実装サンプルです。

input-submit属性の送信ボタンが入力無効になってます。

テキストボックスに値が入力されると送信ボタンの入力無効が解除されボタンが押せるようになってます。

実装手順は以下の通りです。

任意のinput要素を無効にする

<input id="button" type="submit" disabled >

任意のinput要素を入力無効にするにはinputタグ内にdisabledを指定します。

これだけで入力が無効になります。

ある条件判定でdisabledを無効・解除する

// テキスト    
const text = document.getElementById('text');
// ボタン
const button = document.getElementById('button');
// テキストが入力されたら
text.addEventListener('keyup', (e) => {
// ボタンのdisabledを解除
  button.disabled = false;
});

disabledを解除するには、解除したい要素.disabled = false;で解除する事ができます。

逆に有効にしたい場合は有効にしたい要素.disabled = true;で有効にできます。

あとは条件判定式(本記事の例ではテキストボックスにテキストが入力されたら)内に上記無効にするコードを記述すればOKです。

以上の流れで実装完了です。

まとめ

お問い合わせフォームで必須項目が入力されてないと送信ボタンを押せないようにしたい。

そんな時本記事で紹介したdisabledとJacaScriptを使えば簡単に実装できます。

以上で解説を終わります。

目次

関連記事

JavaScript

【JavaScript初心者向け】文字列・配列の要素数を調べる方法

2022.08.23
651
JavaScript

【JavaScript】inputの文字数制限を超えたら任意の処理を実行する方法

2023.03.29
2966
JavaScript

JavaScriptを使い、目次をプラグイン無しで自動生成する方法

2022.10.31
1496
JavaScript

JavaScriptでタブ切り替えを実装する方法【jQuery不要】

2022.10.10
14919