こんにちは、フォーム送信に関する onclick 属性の奇妙な動作に遭遇しました。
サーバー上のページ:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head lang="en-us" >
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>Return Form Example</title>
<script type="text/javascript">
function doSomething(){
alert("hey");
return false;
}
</script>
</head>
<body>
<form action="submit.php" method="post">
<input type="submit" onclick="return doSomething()" value="click me!">
</form>
</body>
</html>
この例では、サーバー上で実行して、送信ボタンをクリックすると、ちょっとというアラートが表示され、現在のページにとどまります。ただし、この同じ例を jsfiddle に設定しようとすると、フォームが送信されたことを意味する 404 エラーが発生します。なぜこれが起こるのか分かりません。
これは、サーバーで動作を複製しようとしているjsfiddleです。
jsfiddle: http://jsfiddle.net/46XSv/