驚いたことに、JS からフォームを送信しているときに、この奇妙な問題が発生しました。
問題:
ボタンsubmit
とanchor link
<form method="POST" action="page.html" name="foobar" id="test">
<input type="text" />
<input type="submit" />
</form>
<a href="#" onclick="document.getElementById('test').submit();">click me</a>
submit イベントをキャッチする関数
document.getElementById('test').onsubmit = function() {
// Same result with
// * document.foobar.onsubmit
// * document.forms['foobar'].onsubmit
alert('foobar');
return false;
}
これで、ボタンをクリックしてフォームが送信されるとsubmit
アラートが表示されますが、リンクをクリックしたときは表示されません。これはなぜそうしているのでしょうか?