GetElementById: mudanças entre as edições
Linha 67: | Linha 67: | ||
''nós não estamos vendo o onSubmit e sim o getElementById();'' | ''nós não estamos vendo o onSubmit e sim o getElementById();'' | ||
''No código acima temos um formulário HTML com dois campos e um botão de enviar, uma tag <div> para mensagem de erro e uma função Javascript identificada por teste_submit(). Quando o botão de enviar for pressionado, vai ser chamada a função Javascript teste_submit(). Essa função pega os objetos do formulário, dos campos do fomulário e do <div>, verifica se algum dos campos está vazio, e se algum deles estiver vazio, ele grava uma string em uma variável local (msg_erro) e depois faz essa string aparecer na tela. Se os dois campos não estiverem vazios, a função submete (envia) o formulário. | ''No código acima temos um formulário HTML com dois campos e um botão de enviar, uma tag <div> para mensagem de erro e uma função Javascript identificada por teste_submit(). Quando o botão de enviar for pressionado, vai ser chamada a função Javascript teste_submit(). Essa função pega os objetos do formulário, dos campos do fomulário e do <div>, verifica se algum dos campos está vazio, e se algum deles estiver vazio, ele grava uma string em uma variável local (msg_erro) e depois faz essa string aparecer na tela. Se os dois campos não estiverem vazios, a função submete (envia) o formulário. | ||
Os passos de pegar os objetos dos elementos do documento são feitos com a função getElementById(), que é uma função do documento, por isso tenho que colocar o document antes da função getElementById(). | Os passos de pegar os objetos dos elementos do documento são feitos com a função getElementById(), que é uma função do documento, por isso tenho que colocar o document antes da função getElementById(). Comoo parametro da função getElementById() tenho que colocar o idetificador único do elemento, que se define pelo atributo id. | ||
Se você está usando uma linguagem no lado do servidor (PHP, ASP ou outras), isso faz com que reduza a carga no servidor, pois tratamos certos erros antes de realmente enviar o formulário. E isso agiliza o processo para o cliente também, que não precisa esperar carregar uma nova página para saber que o formulário que ele tentou enviar está faltando alguma coisa ou está errado.'' | Se você está usando uma linguagem no lado do servidor (PHP, ASP ou outras), isso faz com que reduza a carga no servidor, pois tratamos certos erros antes de realmente enviar o formulário. E isso agiliza o processo para o cliente também, que não precisa esperar carregar uma nova página para saber que o formulário que ele tentou enviar está faltando alguma coisa ou está errado.'' | ||
== Exemplo de getElementById(); no YouTube == | |||
{{#ev:youtube|d54atkK6Hs0}} |
Edição das 16h02min de 31 de outubro de 2013
Função getElementById
A função getElementById() do Javascript é uma função muito utilizada quando queremos fazer um site mais interativo. Essa função pode retornar o objeto de qualquer elemento na página que tenha um id único, e também funciona na maioria dos navegadores. A função getElementById() do Javascript é bem fácil de usar, e é útil em muitas ocasiões. Vamos exemplificar algumas para melhor entendimento.
getElementById() para Tratamento e Envio de Formulário
Vamos supor que eu quero fazer alguma verificações do formulário antes de envia-lo. Eu posso chamar uma função Javascript que faz uso do getElementById() para fazer as verificações necessárias antes de realmente enviar o formulário, porque caso as verificações não procedam, eu posso não enviar o formulário. Vamos ao código:
<html> <head> <title>Exemplo de getElementById() no Formulário</title> <style type="text/css"> #msg_erro { color: red; font-weight: bold; } </style> </head> <body> <script language="JavaScript"> function teste_submit() { var obj_form = document.getElementById('form_teste'); var obj_nome = document.getElementById('nome_teste'); var obj_cargo = document.getElementById('cargo_teste'); var obj_msg_erro = document.getElementById('msg_erro'); var msg_erro = ''; if(obj_nome.value == '') msg_erro = 'campo NOME vazio'; else if(obj_cargo.value == '') msg_erro = 'campo CARGO vazio'; if(msg_erro == '') obj_form.submit(); else obj_msg_erro.innerHTML = msg_erro; } </script> <form id="form_teste" action="http://www.comocriarsites.com" method="post"> Nome: <input type="text" id="nome_teste" name="nome_teste"><BR> Cargo: <input type="text" id="cargo_teste" name="cargo_teste"><BR> <input type="Button" value="Enviar" onclick="teste_submit();"> </form> <div id="msg_erro"></div> </body> </html>
Algumas pessoas que conhecem um pouco de Javascript podem dizer “eu posso fazer a mesma coisa com o onSubmit“, mas nós não estamos vendo o onSubmit e sim o getElementById();
No código acima temos um formulário HTML com dois campos e um botão de enviar, uma tag
Os passos de pegar os objetos dos elementos do documento são feitos com a função getElementById(), que é uma função do documento, por isso tenho que colocar o document antes da função getElementById(). Comoo parametro da função getElementById() tenho que colocar o idetificador único do elemento, que se define pelo atributo id. Se você está usando uma linguagem no lado do servidor (PHP, ASP ou outras), isso faz com que reduza a carga no servidor, pois tratamos certos erros antes de realmente enviar o formulário. E isso agiliza o processo para o cliente também, que não precisa esperar carregar uma nova página para saber que o formulário que ele tentou enviar está faltando alguma coisa ou está errado.