Formulário enviado usando submit () de um link não pode ser pego pelo manipulador onsubmit

Surpreso, estou encontrando esse problema estranho ao enviar o formulário do JS.

Questão:

Considere um formulário simples enviado usando duas formas de umsubmit botão e umanchor 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>

Função pegando o evento de envio

document.getElementById('test').onsubmit = function() {
   // Same result with 
   //     * document.foobar.onsubmit
   //     * document.forms['foobar'].onsubmit

   alert('foobar');
   return false;
}

Agora, quando o formulário é enviado clicando nosubmit botão eu recebo o alerta, masnão quando clicar no link. Por que isso está acontecendo?

Violino Mostrando a Questão

questionAnswers(2)

yourAnswerToTheQuestion