中途半端を極める

web関連で役に立ちそうなものを紹介いたします

javascript

【javascript】チェックボックスをチェックしないとサブミットできないボタン

投稿日:

個人的には結構使用する動作なので紹介いたします。
プライバシーポリシーや20歳以上の確認を行うときなどに有効ですね。
残念ながらフォームのスパム対策としてはおそらく効果は無いと思われます。

step1:javascript読み込みます

<script type="text/javascript" src="jqueryまでのパス/jquery.js"></script>
<script type="text/javascript">// <![CDATA[
$(function() {
	$("form").submit(function() {
		var checkbox_val = $("input:checked[name^=private]").val();  //nameを合わせる(*1)
		if (checkbox_val) {
			return true;
		} else {
			//$("#priv_error").slideDown();
			alert("チェックボックスにチェックを入れてください。");
			return false;
		}
	});
});
// ]]></script>

step2:HTMLの記述を以下のようにします

<form action="next." method="post"><!-- nameを合わせます。(*1) -->
<input id="private" type="checkbox" name="private" />チェック入れたらサブミットできます。
<input id="submit" onmouseover="this.src='./images/bt_on.gif'" onmouseout="this.src='./images/bt.gif'" type="image" alt="" height="60" name="submit" src="./images/bt.gif" width="200" />
</form>

inputのnameとjavascriptのソース内のname要素を合わせなければ動作しません。

参考サイト
http://www.omnioo.com/record/javascriptjquery/check_and_submit/

-javascript

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

関連記事

【javascript】複数の画像をウィンドウ幅に合わせてカルーセル風に実装(bxslider編)

ウィンドウ幅いっぱいにスライドを表示させたい。 そう思ってもなかなか思うような動作をするjavascriptを見つけるのが困難です。 見つけたとしても、それがレスポンシブに対応するのか否か。 そんなこ …

【javascript】レスポンシブデザインにも使用できる!マウスオーバーするとメインの画像が切り替わるjQuery「ImageNavigation」

今回はマウスオーバするとメインの画像が切り替わるjavascriptを紹介いたします。 FLASHなどではこのような動きをするものはあるのですが、jQueryではなかなかありそうでない動きですので、重 …

【javascript】jQueryとprototypeを共存させる方法

自分が管理していないサイトを突然「更新してくれ!」と言われ、確認するとprototypeが使用されておりました。私は基本的にJavaScriptライブラリはjQueryを使用するので、少々戸惑いました …

Google Maps API V2であまりソースを変更せずV3へ移行する方法

注: Google Maps JavaScript API バージョン 2(V2)は、2010 年 5 月 19 日に正式にサポートが終了しました。V2 の廃止スケジュールは 2013 年 5 月 1 …

[javascript]複数の要素の高さを揃えるjavascript利用時にうまく動作しない時の対処法

「EqualHeight」や「flatheights」など複数の要素の高さを揃えるjavascriptを使用すると、SafariとGoogle Chromeではうまく動作しない場合があります。 うまく …