フォームの送信ボタンが押されたら処理を行う

説明

入力フォームの送信時に処理を行うにはonsubmitに送信前の処理を指定します。サンプルでは送信前に確認のダイアログを表示し、結果をreturnで返してします。submitイベントではイベントハンドラからの戻り値がtrueであれば送信、falseであれば送信しないようになっています。サンプルのようにconfirm()での確認ダイアログの戻り値を利用するとOKボタンが押された時は送信され、キャンセルボタンが押された時には送信しないことになります。
JavaScriptテクニック ブック  詳しい解説などはJavaScriptテクニック ブックを参照してください。

サンプルコード [実行]

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>JavaScript Sample</title>
<link rel="stylesheet" type="text/css" href="main.css" media="all">
<script type="text/javascript" src="main.js"></script>
</head>
<body>
<h1>フォームの送信ボタンが押されたら処理を行う</h1>
<form action="./regist.cgi" method="get" id="mainForm" name="mainForm">
名前:<input type="text" name="userName" id="userName"><br>
住所:<input type="text" name="userAddress" id="userAddress"><br>
<input type="submit" value="送信">
</form>
</body>
</html>

window.onload = function(){
document.getElementById("mainForm").onsubmit = function(){
return confirm("この内容で登録しますか?");
}
}