中途半端を極める

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】西暦を自動的に更新されるようにjavascriptで表示する

今回は西暦を自動的に更新されるようにできるjavascriptをメモしておきます。 ・現在の西暦を自動的に取得する方法。 ・最終更新日の西暦を取得する方法。 2パターンあります。 コピーライトの部分と …

HTMLで生年月日から自動で年齢を読み込む方法

HTMLで年齢を表示させる場合、毎年手動で更新している人が多いかもしれません。自分もその中の一人でした。 実際毎年手動で更新するのは面倒くさいし、数が多いと忘れてしまう場合があります。 そんなことにな …

【Javascript】でphpのincludeやrequireのような動作をJavascriptで実現する方法

サブカラムやフッターなど他のページで使いまわすような要素はincludeやrequire、SSIなどで外部ファイルを読み込んで対応している人は多いかと思われます。実際そっちの方が更新も楽ですし、ケアレ …

【javascript】thickboxを組み込んでもポップアップせず、動作がしないときの対処法

thickboxを組み込んでもポップアップせず、動作がしないときの対処法 wordpressでPicasa and Google Plus Expressというプラグインを使用していて、画像をポップア …

ヘッダ固定時のページ内リンクのずれを解消する方法

position:fixedを使ってヘッダを固定した場合、ページ内リンクの位置がヘッダの高さ分ずれてしまいます。どのように調整すればいいか紹介いたします。