jQuery Web制作

【jQuery】disabled属性を使いチェックしたらボタンを有効化・無効化させる方法

2020年5月18日

※ 当サイトではアフィリエイト広告を利用しています

お問い合わせフォームで『同意する』にチェックを入れないと送信ボタンをクリックできないようにしたいけどどうしたらいいんだろう?

お問い合わせフォームに送信ボタンはあるけど、内容確認にチェックを入れないと送信ボタンをクリックできないようにしたい場合などがあります。

今回はjQueryのdisabled属性を使ってチェックを入れたらボタンを有効化・無効化する方法を解説していきたいと思います。

jQueryの使い方はこちらの記事を参照下さい。

あわせて読みたい
【初心者向け】jQueryとは?CDNを使った本体の読み込み方についても分かりやすく解説
【初心者向け】jQueryとは?CDNを使った本体の読み込み方も分かりやすく解説

続きを見る

じゅんぺいブログは、Web制作コーディングWordPress制作)の技術記事を中心に、約500記事公開しています。ぜひ他の記事も参考にしてみてください!
完全無料のプログラミングスクール『ZeroPlus Gate』
30日間でWeb制作を学べる無料のプログラミングスクールがこちら
いきなり数十万するプログラミングスクールは厳しい・・・という人のお試しに最適です。
現在は無料ですがいつ有料になるか分からないので、気になる方はお早めに👇
(有料になっていたらすいません🙇‍♂️)

\ 完全無料 /

ZeroPlus Gate公式サイト

毎日先着制!

jQueryのdisabled属性を使いチェックしたらボタンを有効化・無効化させる方法

まずはHTMLでチェックボタンと送信ボタンを書きます。

<!-- チェックボタン -->
<label>
  <input id="check" type="checkbox" />
  <span>送信内容を確認しました。</span>
</label>
<!-- 送信ボタン -->
<input
  id="button"
  class="button"
  disabled="disabled"
  type="submit"
  name="submit"
  value="送信"
/>

 

CSSで送信ボタンのデザインをカスタマイズ

次はCSSでボタンをカスタマイズします。

.button {
  background-color: #c1c1c1;
  border-radius: 5px;
  color: #fff;
  display: block;
  font-size: 16px;
  font-weight: bold;
  margin: 25px;
  padding: 20px 60px;
}

チェックボックスにチェックを入れたらボタンの色が変わるようにするので、ここではチェックを入れる前の色を『background-color』で設定しています。

 

jQueryのdisabled属性で送信ボタンの有効化と無効化の切り替えを設定

最後にjQueryです。

$("#check").change(function () {
  // チェックが入っていたら有効化
  if ($(this).is(":checked")) {
    // ボタンを有効化
    $("#button").prop("disabled", false);
    // 有効化したらボタンの色を変える
    $("#button").css({ "background-color": "#fb8a00" });
  } else {
    // ボタンを無効化
    $("#button").prop("disabled", true);
    // 無効化したらボタンの色を戻す
    $("#button").css({ "background-color": "#c1c1c1" });
  }
});

今回はチェックボックスにチェックが入ると有効化してボタンの色を変えましたが、フォントサイズを変えたりすることも出来ます。

それでは実際のボタンを見てみましょう。

See the Pen
vYNzZyB
by junpei (@junpei-sugiyama)
on CodePen.

無効化と有効化でクリックすると、色が変わっただけではないことが分かると思います。

 

jQueryを使わずJavaScriptで実装

最後にjQueryを使わずにJavaScriptで実装してみたいと思います。

See the Pen
チェックを入れると送信ボタンが有効化(javascript)
by junpei (@junpei-sugiyama)
on CodePen.

これも基本的な考え方はjQueryの時と同じです。

まとめ

今回はチェックをしたらボタンを有効化・無効化させる方法を解説しました。

お問い合わせフォームでよくある実装なので、出来るようになっておきましょう。

以上になります。

この記事が役に立ったと思ったら、シェアボタンからX(旧Twitter)などにシェアすると、いいねされてフォロワーが増えたりすることがあるよ!

 

  • この記事を書いた人

じゅんぺい

37歳からWeb制作とブログ開始。Web制作歴5年目でコーディングとWordPressオリジナルテーマ制作が中心。これまで120件以上を納品。当ブログ月間最高15万PVで、370記事以上はWeb制作の技術記事。コンテンツ販売→累計売上1200万円&1500部超え。X(旧Twitter)フォロワー7200人以上。2024年3月からブログの経験を活かしてライターとしても活動を開始。

-jQuery, Web制作