Oii Rafael, tudo bem?
Muito obrigada por compartilhar sua dúvida e também por sua sugestão de abordar o comportamento padrão dos botões em formulários.
Você está absolutamente correto. Quando um botão é colocado dentro de um formulário e não é especificado o seu tipo através do atributo type
, o comportamento padrão é de submissão do formulário. Isso pode causar confusão e problemas, especialmente se não for o comportamento desejado.
Por exemplo, se tivermos um formulário como este:
<form>
<input type="text" placeholder="Digite algo aqui">
<button>Clique aqui</button>
</form>
Ao clicar no botão, o formulário será submetido automaticamente, pois o botão não tem um tipo especificado e assume o comportamento padrão de submissão.
Pra evitar isso, podemos especificar o tipo do botão. No caso de um botão que não deve submeter o formulário, podemos usar type="button"
:
<form>
<input type="text" placeholder="Digite algo aqui">
<button type="button">Clique aqui</button>
</form>
Agora, ao clicar no botão, o formulário não será submetido. O botão apenas "clica", mas não faz nada, a menos que tenha algum código JavaScript associado a ele para executar uma ação.
Espero que essa explicação tenha esclarecido um pouco mais sobre o comportamento dos botões em formulários.
Um abraço e bons estudos.