SlideShare a Scribd company logo
1 of 19
HTML
A alma da internet
Prof. Mauro Duarte
18/03/15
Versões anteriores
● Nas versões anteriores ao HTML5 o HTML não
tinha poder de fazer validações.
● As validações eram feitas em javascript
● Veja o seguinte código:
18/03/15
Versões anteriores
<form method="post" action="">
Nome:<input name="nome" type=”text” >
<input type=”submit” value="OK">
</form>
18/03/15
Versões anteriores
Para valida-lo seria necessário um script como este:
● <script language="JavaScript" >
● function enviardados(){
● if(document.dados.tx_nome.value=="" ||
document.dados.tx_nome.value.length < 8)
● { alert( "Preencha campo NOME corretamente!" );
● document.dados.tx_nome.focus();
● return false; }
● </script>
18/03/15
HTML5 - Label
● <label for="nome">Nome: </label>
● A tag label cria um identificador visual que
acompanha o item de formulário.
18/03/15
HTML5 - required
● <input id="nome" type=text required>
● Informa que elemento do formulário é de
preenchimento obrigatório.
18/03/15
HTML5 - email
● <input name="email" type=”email” required>
● Informa que elemento do formulário é um e-
mail exigindo a digitação de um único arroba
(@) entre 2 cadeias de caracteres.
18/03/15
HTML5 - URL
● <input name="site" type=”url” >
● Informa que elemento do formulário é uma url
exigindo a digitação de um endereço como
http://www.site.com.
18/03/15
HTML5 - pattern
● <input name="cep" pattern="[0-9]{5}-[0-9]
{3}">
● O atributo pattern define um expressão
regular para definir o que é aceito ou não.
18/03/15
HTML5 - pattern
● <input name="tel" pattern="([0-9]{2})[s][0-
9]{4}-[0-9]{4}">
● (xx) xxxx-xxxx
18/03/15
HTML5 - autocomplete
● autocomplete=”on” preenche novamente o
formulário caso o usuário retorne pelo botão voltar
do navegador.
● autocomplete=”off” impede este efeito.
18/03/15
HTML5 - autocomplete
● <form autocomplete="on">
● Nome:<input type="text" name="fname"><br>
● E-mail: <input type="email" name="email"
autocomplete="off"><br>
● <input type="submit">
● </form>
18/03/15
HTML5 - autofocus
● Nome:<input type="text" name="fname" autofocus>
● autofocus seleciona um campo e leva o cursor
para ele, só deve haver um autofocus por
formulário/página
18/03/15
HTML5 - formaction
● <form action="demo_form.asp">
● Nome: <input type="text" name="fname"><br>
● <input type="submit" value="Enviar"><br>
● <input type="submit" formaction="demo_admin.asp"
● value="Enviar como Adm">
● </form>
● Formaction permite criar um botão de envio
paralelo, para enviar o formulário para outro
arquivo que irá tratar a solução.
18/03/15
HTML5 - formmethod
● <form action="demo_form.asp" method=”get”>
● Nome: <input type="text" name="fname"><br>
● <input type="submit" value="Enviar"><br>
● <input type="submit" formaction="demo_admin.asp"
● formmethod=”post” value="Enviar como Adm">
● </form>
● Formmethod permite criar um botão de envio
paralelo, para enviar o formulário através de
outro meio.
18/03/15
HTML5 - formtarget
● <form action="demo_form.asp" method=”get”>
● Nome: <input type="text" name="fname"><br>
● <input type="submit" value="Enviar"><br>
● <input type="submit" formaction="demo_admin.asp"
● formmethod=”post” value="Enviar como Adm" formtarget=”_BLANK”>
● </form>
Formtarget permite criar um botão de envio paralelo, para enviar o formulário para
um outro alvo. O alvo pode ser
_BLANK Nova página/aba→
_SELF mesmo frame→
_PARENT frame acima→
_TOP Mesma janela sem frames.→
18/03/15
HTML5 – file
● Selecione o arquivo: <input type="file" name="img">
Insere arquivos no formulário.
18/03/15
HTML5 – file + multiple
● <form enctype="multipart/form-data" >
● Selecione o arquivo: <input type="file" name="img"
multiple>
Permite selecionar mais de um arquivo e inserir
no formulário.
18/03/15
HTML5 – placeholder
● <input type="text" name="fname"
placeholder="Nome">
Preenche com texto desfocado que se apaga ao
clicar e não é enviado junto com o formulário, a
validação considera este campo vazio.

More Related Content

What's hot

11 Java Script - Exemplos com eventos
11 Java Script - Exemplos com eventos11 Java Script - Exemplos com eventos
11 Java Script - Exemplos com eventosCentro Paula Souza
 
Tutorial: Como elaborar um questionário no Google Docs
Tutorial: Como elaborar um questionário no Google DocsTutorial: Como elaborar um questionário no Google Docs
Tutorial: Como elaborar um questionário no Google Docskatv
 
Tutorial: como elaborar um questionário online
Tutorial: como elaborar um questionário onlineTutorial: como elaborar um questionário online
Tutorial: como elaborar um questionário onlinekatv
 

What's hot (6)

11 Java Script - Exemplos com eventos
11 Java Script - Exemplos com eventos11 Java Script - Exemplos com eventos
11 Java Script - Exemplos com eventos
 
Tutorial: Como elaborar um questionário no Google Docs
Tutorial: Como elaborar um questionário no Google DocsTutorial: Como elaborar um questionário no Google Docs
Tutorial: Como elaborar um questionário no Google Docs
 
Tutorial: como elaborar um questionário online
Tutorial: como elaborar um questionário onlineTutorial: como elaborar um questionário online
Tutorial: como elaborar um questionário online
 
Html e css para formulários
Html e css para formuláriosHtml e css para formulários
Html e css para formulários
 
Oficina Blog
Oficina BlogOficina Blog
Oficina Blog
 
Html e css para formulários
Html e css para formuláriosHtml e css para formulários
Html e css para formulários
 

Viewers also liked

0 Introdução ao Desenvolvimento Web - Apresentação
0   Introdução ao Desenvolvimento Web - Apresentação0   Introdução ao Desenvolvimento Web - Apresentação
0 Introdução ao Desenvolvimento Web - ApresentaçãoMauro Duarte
 
7 - Introdução ao desenvolvimento web - mídias
7 - Introdução ao desenvolvimento web - mídias7 - Introdução ao desenvolvimento web - mídias
7 - Introdução ao desenvolvimento web - mídiasMauro Duarte
 
0 apresentação de introdução web
0   apresentação de introdução web 0   apresentação de introdução web
0 apresentação de introdução web Mauro Duarte
 

Viewers also liked (8)

6 link tag a
6   link tag a6   link tag a
6 link tag a
 
8 layout
8   layout8   layout
8 layout
 
0 Introdução ao Desenvolvimento Web - Apresentação
0   Introdução ao Desenvolvimento Web - Apresentação0   Introdução ao Desenvolvimento Web - Apresentação
0 Introdução ao Desenvolvimento Web - Apresentação
 
6 link tag aa
6   link tag aa6   link tag aa
6 link tag aa
 
7 - Introdução ao desenvolvimento web - mídias
7 - Introdução ao desenvolvimento web - mídias7 - Introdução ao desenvolvimento web - mídias
7 - Introdução ao desenvolvimento web - mídias
 
Requsitos
RequsitosRequsitos
Requsitos
 
0 apresentação de introdução web
0   apresentação de introdução web 0   apresentação de introdução web
0 apresentação de introdução web
 
Web form
Web formWeb form
Web form
 

Similar to Validações em formulários HTML5

Java mais ágil que nunca no desenvolvimento Web
Java mais ágil que nunca no desenvolvimento WebJava mais ágil que nunca no desenvolvimento Web
Java mais ágil que nunca no desenvolvimento WebBruno Borges
 
ASP.NET MVC Mini Curso
ASP.NET MVC Mini CursoASP.NET MVC Mini Curso
ASP.NET MVC Mini CursoVinicius Rocha
 
Google Analytics Reporting API: Bebendo água direto da fonte
Google Analytics Reporting API: Bebendo água direto da fonteGoogle Analytics Reporting API: Bebendo água direto da fonte
Google Analytics Reporting API: Bebendo água direto da fonteJohann Vivot
 
Apps Web em Wicket e Scala no GlassFish Java EE 6
Apps Web em Wicket e Scala no GlassFish Java EE 6Apps Web em Wicket e Scala no GlassFish Java EE 6
Apps Web em Wicket e Scala no GlassFish Java EE 6Bruno Borges
 
Introdução de web
Introdução de webIntrodução de web
Introdução de webSedu
 
09 Java Script - As formas de usar
09  Java Script  - As formas de usar09  Java Script  - As formas de usar
09 Java Script - As formas de usarCentro Paula Souza
 
Curso de Java (Parte 6) Introdução a Front-end
Curso de Java (Parte 6) Introdução a Front-endCurso de Java (Parte 6) Introdução a Front-end
Curso de Java (Parte 6) Introdução a Front-endMario Sergio
 
Introdução a Desenvolvimento Web
Introdução a Desenvolvimento WebIntrodução a Desenvolvimento Web
Introdução a Desenvolvimento WebPeslPinguim
 
Aula 1 linguagem html (1)
Aula 1   linguagem html (1)Aula 1   linguagem html (1)
Aula 1 linguagem html (1)Kaoru Hatake
 
Web components: mais simples e produtivo com polymer!
Web components: mais simples e produtivo com polymer!Web components: mais simples e produtivo com polymer!
Web components: mais simples e produtivo com polymer!Andrew Willard
 

Similar to Validações em formulários HTML5 (20)

Html5
Html5Html5
Html5
 
Aula 09
Aula 09Aula 09
Aula 09
 
Java mais ágil que nunca no desenvolvimento Web
Java mais ágil que nunca no desenvolvimento WebJava mais ágil que nunca no desenvolvimento Web
Java mais ágil que nunca no desenvolvimento Web
 
04_Introducao_JavaScript.pdf
04_Introducao_JavaScript.pdf04_Introducao_JavaScript.pdf
04_Introducao_JavaScript.pdf
 
07 html formulários
07 html   formulários07 html   formulários
07 html formulários
 
Aula 5 php
Aula 5 phpAula 5 php
Aula 5 php
 
Java script aula 10 - angularjs
Java script   aula 10 - angularjsJava script   aula 10 - angularjs
Java script aula 10 - angularjs
 
ASP.NET MVC Mini Curso
ASP.NET MVC Mini CursoASP.NET MVC Mini Curso
ASP.NET MVC Mini Curso
 
Rich faces
Rich facesRich faces
Rich faces
 
Google Analytics Reporting API: Bebendo água direto da fonte
Google Analytics Reporting API: Bebendo água direto da fonteGoogle Analytics Reporting API: Bebendo água direto da fonte
Google Analytics Reporting API: Bebendo água direto da fonte
 
Apps Web em Wicket e Scala no GlassFish Java EE 6
Apps Web em Wicket e Scala no GlassFish Java EE 6Apps Web em Wicket e Scala no GlassFish Java EE 6
Apps Web em Wicket e Scala no GlassFish Java EE 6
 
Introdução de web
Introdução de webIntrodução de web
Introdução de web
 
Google apps script - Parte 2
Google apps script - Parte 2Google apps script - Parte 2
Google apps script - Parte 2
 
09 Java Script - As formas de usar
09  Java Script  - As formas de usar09  Java Script  - As formas de usar
09 Java Script - As formas de usar
 
RCOM 11º Ano - HTML
RCOM 11º Ano - HTMLRCOM 11º Ano - HTML
RCOM 11º Ano - HTML
 
Curso de Java (Parte 6) Introdução a Front-end
Curso de Java (Parte 6) Introdução a Front-endCurso de Java (Parte 6) Introdução a Front-end
Curso de Java (Parte 6) Introdução a Front-end
 
Introdução a Desenvolvimento Web
Introdução a Desenvolvimento WebIntrodução a Desenvolvimento Web
Introdução a Desenvolvimento Web
 
Aula 1 linguagem html (1)
Aula 1   linguagem html (1)Aula 1   linguagem html (1)
Aula 1 linguagem html (1)
 
Web components: mais simples e produtivo com polymer!
Web components: mais simples e produtivo com polymer!Web components: mais simples e produtivo com polymer!
Web components: mais simples e produtivo com polymer!
 
Workshop Magento
Workshop MagentoWorkshop Magento
Workshop Magento
 

More from Mauro Duarte

CSS - Folhas de Estilo em Cascata
CSS - Folhas de Estilo em Cascata CSS - Folhas de Estilo em Cascata
CSS - Folhas de Estilo em Cascata Mauro Duarte
 
01 Desenvolvimento em Redes de Computadores - Comandos Básicos
01   Desenvolvimento em Redes de Computadores - Comandos Básicos01   Desenvolvimento em Redes de Computadores - Comandos Básicos
01 Desenvolvimento em Redes de Computadores - Comandos BásicosMauro Duarte
 
00 apresentação desenvolvimento em redes de computadores
00   apresentação desenvolvimento em redes de computadores00   apresentação desenvolvimento em redes de computadores
00 apresentação desenvolvimento em redes de computadoresMauro Duarte
 
Porque tanta pressa - Caril Borges
Porque tanta pressa - Caril BorgesPorque tanta pressa - Caril Borges
Porque tanta pressa - Caril BorgesMauro Duarte
 
Perdoando como José perdoou - Caril Borges
Perdoando como José perdoou - Caril BorgesPerdoando como José perdoou - Caril Borges
Perdoando como José perdoou - Caril BorgesMauro Duarte
 
Otimistas ou pessimistas - Caril Borges
Otimistas ou pessimistas - Caril BorgesOtimistas ou pessimistas - Caril Borges
Otimistas ou pessimistas - Caril BorgesMauro Duarte
 
Nos importando com o próximo
Nos importando com o próximoNos importando com o próximo
Nos importando com o próximoMauro Duarte
 
Noé não deu desculpas para nao servir a deus
Noé não deu desculpas para nao servir a deusNoé não deu desculpas para nao servir a deus
Noé não deu desculpas para nao servir a deusMauro Duarte
 
Construindo muros ou pontes
Construindo muros ou pontesConstruindo muros ou pontes
Construindo muros ou pontesMauro Duarte
 
A tragédia que virou triunfo
A tragédia que virou triunfoA tragédia que virou triunfo
A tragédia que virou triunfoMauro Duarte
 
Atitudes para os problemas de 2015 - Caril Borges
Atitudes para os problemas de 2015  - Caril BorgesAtitudes para os problemas de 2015  - Caril Borges
Atitudes para os problemas de 2015 - Caril BorgesMauro Duarte
 
As armadilhas de satanás - Caril Borges
As armadilhas de satanás - Caril BorgesAs armadilhas de satanás - Caril Borges
As armadilhas de satanás - Caril BorgesMauro Duarte
 
Otimizando a Produção de WebSites com Joomla
Otimizando a Produção de WebSites com JoomlaOtimizando a Produção de WebSites com Joomla
Otimizando a Produção de WebSites com JoomlaMauro Duarte
 
Ataques de Dicionário com CUPP
Ataques de Dicionário com CUPPAtaques de Dicionário com CUPP
Ataques de Dicionário com CUPPMauro Duarte
 
Automação de Testes Selenium IDE
Automação de Testes Selenium IDEAutomação de Testes Selenium IDE
Automação de Testes Selenium IDEMauro Duarte
 
História Logo Flisol
História Logo Flisol História Logo Flisol
História Logo Flisol Mauro Duarte
 
03 Sistemas Operacionais Linux
03   Sistemas Operacionais Linux03   Sistemas Operacionais Linux
03 Sistemas Operacionais LinuxMauro Duarte
 
Aula 02 - Sistemas Operacionais - Microsoft
Aula 02 - Sistemas Operacionais - MicrosoftAula 02 - Sistemas Operacionais - Microsoft
Aula 02 - Sistemas Operacionais - MicrosoftMauro Duarte
 

More from Mauro Duarte (20)

CSS - Folhas de Estilo em Cascata
CSS - Folhas de Estilo em Cascata CSS - Folhas de Estilo em Cascata
CSS - Folhas de Estilo em Cascata
 
Os pássaros
Os pássarosOs pássaros
Os pássaros
 
01 Desenvolvimento em Redes de Computadores - Comandos Básicos
01   Desenvolvimento em Redes de Computadores - Comandos Básicos01   Desenvolvimento em Redes de Computadores - Comandos Básicos
01 Desenvolvimento em Redes de Computadores - Comandos Básicos
 
00 apresentação desenvolvimento em redes de computadores
00   apresentação desenvolvimento em redes de computadores00   apresentação desenvolvimento em redes de computadores
00 apresentação desenvolvimento em redes de computadores
 
Porque tanta pressa - Caril Borges
Porque tanta pressa - Caril BorgesPorque tanta pressa - Caril Borges
Porque tanta pressa - Caril Borges
 
Perdoando como José perdoou - Caril Borges
Perdoando como José perdoou - Caril BorgesPerdoando como José perdoou - Caril Borges
Perdoando como José perdoou - Caril Borges
 
Otimistas ou pessimistas - Caril Borges
Otimistas ou pessimistas - Caril BorgesOtimistas ou pessimistas - Caril Borges
Otimistas ou pessimistas - Caril Borges
 
Nos importando com o próximo
Nos importando com o próximoNos importando com o próximo
Nos importando com o próximo
 
Noé não deu desculpas para nao servir a deus
Noé não deu desculpas para nao servir a deusNoé não deu desculpas para nao servir a deus
Noé não deu desculpas para nao servir a deus
 
Construindo muros ou pontes
Construindo muros ou pontesConstruindo muros ou pontes
Construindo muros ou pontes
 
A tragédia que virou triunfo
A tragédia que virou triunfoA tragédia que virou triunfo
A tragédia que virou triunfo
 
Atitudes para os problemas de 2015 - Caril Borges
Atitudes para os problemas de 2015  - Caril BorgesAtitudes para os problemas de 2015  - Caril Borges
Atitudes para os problemas de 2015 - Caril Borges
 
As armadilhas de satanás - Caril Borges
As armadilhas de satanás - Caril BorgesAs armadilhas de satanás - Caril Borges
As armadilhas de satanás - Caril Borges
 
Otimizando a Produção de WebSites com Joomla
Otimizando a Produção de WebSites com JoomlaOtimizando a Produção de WebSites com Joomla
Otimizando a Produção de WebSites com Joomla
 
Ataques de Dicionário com CUPP
Ataques de Dicionário com CUPPAtaques de Dicionário com CUPP
Ataques de Dicionário com CUPP
 
Automação de Testes Selenium IDE
Automação de Testes Selenium IDEAutomação de Testes Selenium IDE
Automação de Testes Selenium IDE
 
História Logo Flisol
História Logo Flisol História Logo Flisol
História Logo Flisol
 
Web Design Hacker
Web Design HackerWeb Design Hacker
Web Design Hacker
 
03 Sistemas Operacionais Linux
03   Sistemas Operacionais Linux03   Sistemas Operacionais Linux
03 Sistemas Operacionais Linux
 
Aula 02 - Sistemas Operacionais - Microsoft
Aula 02 - Sistemas Operacionais - MicrosoftAula 02 - Sistemas Operacionais - Microsoft
Aula 02 - Sistemas Operacionais - Microsoft
 

Validações em formulários HTML5

  • 1. HTML A alma da internet Prof. Mauro Duarte
  • 2. 18/03/15 Versões anteriores ● Nas versões anteriores ao HTML5 o HTML não tinha poder de fazer validações. ● As validações eram feitas em javascript ● Veja o seguinte código:
  • 3. 18/03/15 Versões anteriores <form method="post" action=""> Nome:<input name="nome" type=”text” > <input type=”submit” value="OK"> </form>
  • 4. 18/03/15 Versões anteriores Para valida-lo seria necessário um script como este: ● <script language="JavaScript" > ● function enviardados(){ ● if(document.dados.tx_nome.value=="" || document.dados.tx_nome.value.length < 8) ● { alert( "Preencha campo NOME corretamente!" ); ● document.dados.tx_nome.focus(); ● return false; } ● </script>
  • 5. 18/03/15 HTML5 - Label ● <label for="nome">Nome: </label> ● A tag label cria um identificador visual que acompanha o item de formulário.
  • 6. 18/03/15 HTML5 - required ● <input id="nome" type=text required> ● Informa que elemento do formulário é de preenchimento obrigatório.
  • 7. 18/03/15 HTML5 - email ● <input name="email" type=”email” required> ● Informa que elemento do formulário é um e- mail exigindo a digitação de um único arroba (@) entre 2 cadeias de caracteres.
  • 8. 18/03/15 HTML5 - URL ● <input name="site" type=”url” > ● Informa que elemento do formulário é uma url exigindo a digitação de um endereço como http://www.site.com.
  • 9. 18/03/15 HTML5 - pattern ● <input name="cep" pattern="[0-9]{5}-[0-9] {3}"> ● O atributo pattern define um expressão regular para definir o que é aceito ou não.
  • 10. 18/03/15 HTML5 - pattern ● <input name="tel" pattern="([0-9]{2})[s][0- 9]{4}-[0-9]{4}"> ● (xx) xxxx-xxxx
  • 11. 18/03/15 HTML5 - autocomplete ● autocomplete=”on” preenche novamente o formulário caso o usuário retorne pelo botão voltar do navegador. ● autocomplete=”off” impede este efeito.
  • 12. 18/03/15 HTML5 - autocomplete ● <form autocomplete="on"> ● Nome:<input type="text" name="fname"><br> ● E-mail: <input type="email" name="email" autocomplete="off"><br> ● <input type="submit"> ● </form>
  • 13. 18/03/15 HTML5 - autofocus ● Nome:<input type="text" name="fname" autofocus> ● autofocus seleciona um campo e leva o cursor para ele, só deve haver um autofocus por formulário/página
  • 14. 18/03/15 HTML5 - formaction ● <form action="demo_form.asp"> ● Nome: <input type="text" name="fname"><br> ● <input type="submit" value="Enviar"><br> ● <input type="submit" formaction="demo_admin.asp" ● value="Enviar como Adm"> ● </form> ● Formaction permite criar um botão de envio paralelo, para enviar o formulário para outro arquivo que irá tratar a solução.
  • 15. 18/03/15 HTML5 - formmethod ● <form action="demo_form.asp" method=”get”> ● Nome: <input type="text" name="fname"><br> ● <input type="submit" value="Enviar"><br> ● <input type="submit" formaction="demo_admin.asp" ● formmethod=”post” value="Enviar como Adm"> ● </form> ● Formmethod permite criar um botão de envio paralelo, para enviar o formulário através de outro meio.
  • 16. 18/03/15 HTML5 - formtarget ● <form action="demo_form.asp" method=”get”> ● Nome: <input type="text" name="fname"><br> ● <input type="submit" value="Enviar"><br> ● <input type="submit" formaction="demo_admin.asp" ● formmethod=”post” value="Enviar como Adm" formtarget=”_BLANK”> ● </form> Formtarget permite criar um botão de envio paralelo, para enviar o formulário para um outro alvo. O alvo pode ser _BLANK Nova página/aba→ _SELF mesmo frame→ _PARENT frame acima→ _TOP Mesma janela sem frames.→
  • 17. 18/03/15 HTML5 – file ● Selecione o arquivo: <input type="file" name="img"> Insere arquivos no formulário.
  • 18. 18/03/15 HTML5 – file + multiple ● <form enctype="multipart/form-data" > ● Selecione o arquivo: <input type="file" name="img" multiple> Permite selecionar mais de um arquivo e inserir no formulário.
  • 19. 18/03/15 HTML5 – placeholder ● <input type="text" name="fname" placeholder="Nome"> Preenche com texto desfocado que se apaga ao clicar e não é enviado junto com o formulário, a validação considera este campo vazio.