Qual a diferença entre button submit e input submit

24/01/2017

120

Fala pessoal,

Esses dias vi algo que me deixou um pouco confuso.

Na maioria dos formulários que vejo, existe um botão para enviar o formulário assim:

<input type="submit" name="enviar" value="Enviar" />


Mas vi isso aqui nesses dias

<button type="submit">Enviar</button>


Qual é o certo afinal de contas?
Alessandro Gomes

Alessandro Gomes

Responder

Post mais votado

25/01/2017

Amigo e o Seguinte, isto vai de programador, e de estilo.
a diferença e apenas No visual ok.
<input type="submit" name ........ etc..
usando este metodo, vc tem a opção mais travada quanto a visual, nada mais. a função vc tem que declara, que esta no type="" -- Value="" onde vc determina a sua função, e value"", seu valor visto. em fim. fica só nisto. não afeta seu processo, fara o mesmo que usar <button....>.;

já o <button type="submit">Enviar</button>;
Mesma coisa do <input..>; sua função sera determinada por vc.
<button type="submit" name="Nome_de_sua_altorai" value="valor_de_sua_altoria">_aqui esta algo diferente_</button>


agora vem a parte, a diferença esta no visual, antes das tags de fechamento você pode implementar outros dados, para melhorar o visual do botão e deixa mais flexível a mudanças e melhorias. com uma diferença. muito sutil. se você não declarar o type="" para <button ...> ele adiciona por padrão o submit. isto você nem precisa escrever submit, ele ao ser interpretar no navegador se não tiver o type="" declarado ele declara submit, somente isto para deixar uma leve diferença, o resto e parte visual mesmo..

Paulo Hendrix

Paulo Hendrix
Responder

Mais Posts

25/01/2017

Alessandro Gomes

Obrigado Kn0w,

Então não há um jeito mais certo né? Depende de quem implementar.

Quando perguntei pensei que pudesse ter alguma diferença na funcionalidade.
Responder

26/01/2017

João Lima

Do ponto de vista funcional não há diferença, ambos irão submeter o formulário da mesma forma. Segundo a especificação, se atributo type estiver ausente da tag <button>, o comportamento padrão será de submit.

A diferença fica na declaração das tags e na área visual.

A tag <input> contém um atributo de valor value que é exibido e geralmente não é fechada ou é auto fechada. Exemplo:

<input type="submit" value="Submit" />


Note que o value do <input> que é enviado ao servidor é sempre igual ao texto exibido no botão, acoplando a parte visual com uma implementação que dependa desse valor. Não é uma boa prática, sendo que botões com imagens eram usados como alternativas.

Por outro lado, <button> tem um conteúdo entre a tag de abertura e fechamento, sendo mais flexível do que a tag tradicional, permitindo, por exemplo, imagens e mais estilos visuais. Exemplo:

<button type="submit" name="myButton" value="foo">Click me</button>
Responder

31/01/2017

Robson Cavalcante

Obrigado Kn0w,

Então não há um jeito mais certo né? Depende de quem implementar.

Quando perguntei pensei que pudesse ter alguma diferença na funcionalidade.



Se você usar o button type="button" aí sim terá diferença, no qual você poderia até usar um evento de clique do javascript
Responder

13/02/2017

Alessandro Gomes

Obrigado Jaum93 e Robson. Grato pela ajuda de vocês!
Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários,
consulte nossa política de privacidade.

Aceitar