No código:
<form class="form" onsubmit="negociacaoController.adiciona(event)">
O que exatamente estamos passando como parâmetro no método "adiciona"? Aquele "event" leva o quê para o JS?
No código:
<form class="form" onsubmit="negociacaoController.adiciona(event)">
O que exatamente estamos passando como parâmetro no método "adiciona"? Aquele "event" leva o quê para o JS?
Oi Bernardo,
Quando o formulário for enviado, o evento de submit
vai ser disparado. Quando ele for disparado, o código negociacaoController.adiciona(event)
vai ser executado. Sempre que um código JS é executado por causa de um evento, a variável event
estará disponível pra gente usar. Ela armazena várias informações sobre o evento que está sendo disparado. Se quiser acessar qual foi o elemento/tag na qual o evento foi disparado é possível acessar event.target
. Se quiser saber o momento em que foi disparado o evento, event.timeStamp
. Tem bastante coisa dentro desse event
! Se quiser ver mais coisas, aqui um link bom pra dar uma olhada: https://developer.mozilla.org/en-US/docs/Web/API/Event
EDIT: Enquanto eu digitava a resposta, apareceu outra :)
Olá Bernardo, td bem?
No JavaScript existem os event handlers
, que são aqueles iniciados com a palavra on (onSubmit, onClick, onBlur, onChange, etc.), que no HTML se digita em letras minúsculas. E para esses event handlers
existe essa palavra event
, que é na verdade um objeto que contém várias informações sobre o evento, no nosso caso, o evento de submit.
Se der um log nesse objeto dentro do controller, irá ver que nele existem coisas como o tipo de evento (submit) e o target (form.form), além do método preventDefault
que é do nosso interesse.
Então saiba que sempre que um evento desse tipo ocorre, o objeto event
é criado automaticamente. E para funcionar, precisa usar a palavra event
mesmo, se colocássemos banana ou qualquer outra coisa no lugar não daria certo.