Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS

Moderador: web

 
Primeiras postagens
Primeiras postagens
Tópico Autor
Mensagens: 4
Sexo: Masculino

Calcular Idade em Javascript mostrando no próprio formulário

24-04-2012 14:42

Boa Tarde Pessoal. Preciso calcular a idade do cliente a partir da data de nascimento, e exibir o resultado no campo do formulário. Já querbrei a cabeça, mas meu código não roda de jeito nenhum. Se puderem me ajudar, mando também o código do meu form para análise.
Obrigado.


<script type="text/javascript">   function Idade(form){ var data = new Date(); var txt_idade = new Date(); txt_idade.setDate(txt_idade.getDate()+62); var diferenca = (txt_idade.getFullYear()*12 + txt_idade.getMonth()) - (data.getFullYear()*12 + data.getMonth());      document.write("idade").txt_idade.data = diferenca; } onload==Idade;    </script>


<body> <form name="form" id="form"     onsubmit="javascript: return validar(form);" method="post" action=""onChange="idade();">                 <table width="341" align="left" class="borda" cellpadding="0"                         cellspacing="0" border="1">                         <tr>                                 <td width="140"><label for="txt_nome">Nome</label></td>                                 <td width="193"><input type="text" name="txt_nome" id="txt_nome" value="" />                                 </td>                         </tr>                         <tr>                                 <td><label for="txt_endereco">Endereço</label></td>                                 <td><input type="text" name="txt_endereco" id="txt_endereco"                                         value="" /></td>                         </tr>                         <tr>                                 <td><label for="rdo_sexo_0">Sexo</label></td>                                 <td><p>                                                 <label> <input type="radio" name="rdo_sexo" value="M"                                                         id="rdo_sexo_0" /> Masculino</label> <br /> <label> <input                                                         type="radio" name="rdo_sexo" value="F" id="rdo_sexo_1" />                                                         Feminino</label> <br />                                         </p></td>                         </tr>                         <tr>                                 <td><label for="slt_civil">Estado Civil</label></td>                                 <td><select name="slt_civil" id="slt_civil">                                                 <option value="">--------------------------</option>                                                 <option value="s">Solteiro(a)</option>                                                 <option value="c">Casado(a)</option>                                                 <option value="v">Viúvo(a)</option>                                                 <option value="d">Divorciado(a)</option>                                                 <option value="j">Separado(a) judicialmente</option>                                 </select>                                 </td>                         </tr>                                                   <tr>         <td><label for="txt_idade">Data de Nascimento</label></td>     <td><input type="text" name="txt_idade" id="txt_idade" value="" maxlength="10" size="12" /></td>   </tr>                 <tr>         <td><label for="idade">Idade</label></td>         <td><input type="text" name="idade" id="idade"value="0"  size=3 onFocus="Valida();"/> <input type=hidden name="tsk" value="false"/> </td>                 </tr>                                         <tr>                                 <td colspan="2">Hobbies</td>                         </tr>                         <tr>                                 <td colspan="2"><table width="100%">                                                 <tr>                                                         <td><label> <input type="checkbox"                                                                         name="chk_hobbies[]" value="1" id="chk_hobbies_0" /> Esporte</label></td>                                                         <td><label> <input type="checkbox"                                                                         name="chk_hobbies[]" value="2" id="chk_hobbies_1" />                                                                         Jardinagem</label></td>                                                 </tr>                                                 <tr>                                                         <td><label> <input type="checkbox"                                                                         name="chk_hobbies[]" value="3" id="chk_hobbies_2" /> Pintura</label></td>                                                         <td><label> <input type="checkbox"                                                                         name="chk_hobbies[]" value="4" id="chk_hobbies_3" /> Corte &                                                                         Custura</label></td>                                                 </tr>                                                 <tr>                                                         <td><label> <input type="checkbox"                                                                         name="chk_hobbies[]" value="5" id="chk_hobbies_4" /> Musica</label></td>                                                         <td><label> <input type="checkbox"                                                                         name="chk_hobbies[]" value="6" id="chk_hobbies_5" /> Meditação</label>                                                         </td>                                                 </tr>                                                 <tr>                                                         <td><label> <input type="checkbox"                                                                         name="chk_hobbies[]" value="7" id="chk_hobbies_6" /> Leitura</label></td>                                                         <td><label> <input type="checkbox"                                                                         name="chk_hobbies[]" value="8" id="chk_hobbies_7" /> Jogos                                                                         Eletrônicos</label></td>                                                 </tr>                              <tr>        <td colspan="2" align="center"><input type="button" name="btn_addhoobies" id="btn_addhoobies" value="Adicionar Hobbies" /></td>          </tr>                                                                                                                 </table></td>                         </tr>                         <tr>                                 <td colspan="2"><label for="txa_comentario">Comente um                                                 pouco sobre você</label></td>                         </tr>                         <tr>                                 <td colspan="2"><textarea rows="5" cols="50"                                                 name="txa_comentario" id="txa_comentario"></textarea></td>                         </tr>                         <tr>                                 <td colspan="2" align="center"><input type="submit"                                         name="sbm_enviar" id="sbm_enviar" value="Enviar" />&nbsp;<input                                         type="reset" name="rst_limpar" id="rst_limpar" value="Limpar" /></td>                         </tr>                 </table>         </form> </body> </html>

0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17242
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Cálcular Idade em Javascript mostrando no próprio formulário

24-04-2012 15:41

Aqui vai um exemplo do script em JavaScript para calcular a idade a partir da data do nascimento.

<script> function calculateAge(dobString) {     var dob = new Date(dobString);     var currentDate = new Date();     var currentYear = currentDate.getFullYear();     var birthdayThisYear = new Date(currentYear, dob.getMonth(), dob.getDate());     var age = currentYear - dob.getFullYear();       if(birthdayThisYear > currentDate) {         age--;     }       return age; }   alert(calculateAge('1978-04-27'));   </script>

0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Primeiras postagens
Primeiras postagens
Tópico Autor
Mensagens: 4
Sexo: Masculino

Cálcular Idade em Javascript mostrando no próprio formulário

24-04-2012 16:58

Blz.
Mas como eu faria para que o resultado aparecesse no campo idade do meu form? Qual parte do código eu devo mudar?

Obrigado pelo código.
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17242
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Cálcular Idade em Javascript mostrando no próprio formulário

24-04-2012 17:08

Segue um exemplo

<script> function calculateAge(dobString) { var dob = new Date(dobString); var currentDate = new Date(); var currentYear = currentDate.getFullYear(); var birthdayThisYear = new Date(currentYear, dob.getMonth(), dob.getDate()); var age = currentYear - dob.getFullYear(); if(birthdayThisYear > currentDate) { age--; } return age; } function calcular(data) { var data = document.form.nascimento.value; var partes = data.split("/"); var junta = partes[2]+"-"+partes[1]+"-"+partes[0]; document.form.idade.value = (calculateAge(junta)); } </script>


<form name="form"> <input type="text" name="nascimento" value=""> <input type="text" name="idade" value=""> <input type="button" value="calcular" onclick="calcular()"> </form>

0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Primeiras postagens
Primeiras postagens
Tópico Autor
Mensagens: 4
Sexo: Masculino

Cálcular Idade em Javascript mostrando no próprio formulário

24-04-2012 17:19

Ainda não resolve meu problema, pois preciso que o valor digitado no campo txt_idade, apareça automaticamente no campo idade o resultado, sem ter que acionar nenhum botão.
Diícil, mas é real (rsrsrsrsrs).

Mais uma vez agradeço o tempo e, estou tentando aqui adaptar os códigos para ver se consigo, se conseguir posto aqui.

Obrigado.
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17242
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Cálcular Idade em Javascript mostrando no próprio formulário

24-04-2012 19:05

Você pode adicionar o evento onblur no input onde a data de nascimento é digitada

onblur="calcular()"
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Primeiras postagens
Primeiras postagens
Tópico Autor
Mensagens: 4
Sexo: Masculino

Cálcular Idade em Javascript mostrando no próprio formulário

26-04-2012 17:59

Boa Tarde, desculpem a demora em responder, mas o Onblur era o que faltava, realmente deu certo, adaptei o código e rodou perfeitamente. Aqueles que precisarem de ajuda estou a disposição para responder a respeito deste código, aqueles que me ajudaram fica o meu Muito Obrigado.

Marcos.
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17242
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Cálcular Idade em Javascript mostrando no próprio formulário

26-04-2012 18:31

:)
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 10 postagens
Mais de 10 postagens
Mensagens: 12
Sexo: Masculino

Cálcular Idade em Javascript mostrando no próprio formulário

16-05-2012 15:49

Estou com o mesmo problema ... estou desenvolvendo um sistema de avaliação antropométrica, para verificar o IMC (índice de massa corporal), etc, onde quando o usuário digita valores em um textfield como comprimento da cintura ele automaticamente faz o cálculo num segundo textfield e através do atributo onblur="metodo();" ele já gera o resultado num terceiro textfield... está tudo dando certo, porém justamente no campo de data de nascimento não estou conseguindo obter a idade do usuário para jogar no 3 textfield... no browser aparece erro de objeto esperado... segue abaixo o código

function calculateAge(dobString) {       var dob = new Date(dobString);       var currentDate = new Date();       var currentYear = currentDate.getFullYear();       var birthdayThisYear = new Date(currentYear, dob.getMonth(), dob.getDate());       var age = currentYear - dob.getFullYear();   if(birthdayThisYear > currentDate) { age--; } return age; } function calcular(data) { var data = document.frm.txtDtNasc.value; var partes = data.split("/"); var junta = partes[2]+"-"+partes[1]+"-"+partes[0]; document.frm.txtIdadeU.value = (calculateAge(junta)); }

O textfield "txtDtNasc" é o campo onde o usuário digita a data... e o campo "txtIdadeU" será o campo que irá receber pelo método "onblur", o valor após ser calculada a idade... por favor me ajudem
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17242
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Cálcular Idade em Javascript mostrando no próprio formulário

16-05-2012 16:03

Eu vi aqui seu código parece ok, tem que ver o formulário.
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 10 postagens
Mais de 10 postagens
Mensagens: 12
Sexo: Masculino

Cálcular Idade em Javascript mostrando no próprio formulário

16-05-2012 16:19

Caramba... vc's são rápidos por aqui

Segue o formulário

<form id="frm" name="frm" method="post" action="teste.php" onsubmit="validaForm();">       <br />       <table width="635" border="0" align="center" cellpadding="0" cellspacing="0">         <tr>           <td width="676" height="21" bgcolor="#B5CBE9" class="viabox2"><div align="center" class="tituloSite"><strong>Sistema de Avaliação Funcional</strong> Antropométrica</div></td>         </tr>       </table>       <table width="635" border="0" align="center" cellpadding="0" cellspacing="0">         <tr>           <td align="center" bgcolor="#CCCCCC" class="viabox2"><div align="center" class="viabox2">Dados Pessoais</div></td>         </tr>       </table>       <table width="635" border="0" align="center" cellpadding="0" cellspacing="0">         <tr>           <td width="387" class="viabox">Nome Completo:</td>           <td width="248" class="viabox">Sexo:</td>         </tr>         <tr>           <td><span class="viabox">             <input name="txtNome" type="text" id="txtNome" size="50" maxlength="45" tabindex="1" />           </span></td>           <td><label>             <input type="radio" name="radio" id="sexo" value="masculino" />             Masculino             <input type="radio" name="radio" id="sexo" value="feminino" />             Feminino</label></td>         </tr>       </table>       <table width="635" border="0" align="center" cellpadding="0" cellspacing="0">         <tr>           <td width="93" class="viabox">Data de Nascimento:</td>           <td width="95" class="viabox">Telefone:</td>           <td width="92" class="viabox">Celular:</td>           <td width="109" class="viabox">Endere&ccedil;o:</td>           <td width="246"><span class="viabox">Logradouro</span>:</td>         </tr>         <tr>           <td><span class="viabox"><span class="titulo">             <input name="txtDtNasc" type="text" id="txtDtNasc" size="8" maxlength="10" tabindex="7" onblur="calcular();"/>          </span></span></td>           <td><span class="titulo"><span class="viabox">             <input name="txtTel" type="text" id="txtTel" size="8" maxlength="13" tabindex="8" />           </span></span></td>           <td><span class="titulo"><span class="viabox">             <input name="txtCel" type="text" id="txtCel" size="8" maxlength="13" tabindex="9" />           </span></span></td>          <tr>             <td class="viabox">Data da Consulta:</td>             <td width="247" class="viabox">Email:</td>          </tr>          <td><label>             <input name="txtEmail" type="text" id="txtEmail" size="10" maxlength="20" />           </label></td>           </tr>           <tr>              <td class="viabox"><label>             <input name="txtIdadeU" type="text" id="txtIdadeU" size="10" />           </label></td>           </tr>         <tr>           <td colspan="4">&nbsp;</td>         </tr>       </table>       </table>     </form></td>   </tr> </table> </body> </html>

Eu retirei algumas partes do código que são irrelevantes neste caso para não ficar muito extenso
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17242
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Cálcular Idade em Javascript mostrando no próprio formulário

16-05-2012 16:52

Parece que faltou um this.value dentro da sua função no onblur

onblur="calcular(this.value)"
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 10 postagens
Mais de 10 postagens
Mensagens: 12
Sexo: Masculino

Cálcular Idade em Javascript mostrando no próprio formulário

16-05-2012 16:59

Muito obrigado pela ajuda... acabei modificando o sistema e solicitando que o usuário informe apenas o ano de nascimento já que ainda não perguntei meu cliente se ele vai precisar que seja gravado a data completa de nascimento. De qualquer forma irei testar assim que possível pois estou seguindo com os cálculos do sistema. Muito obrigado pela ajuda, não havia pensado nesta hipótese que você informou. Assim que testar posto o resultado.

;)
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17242
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Cálcular Idade em Javascript mostrando no próprio formulário

16-05-2012 17:20

Boa.
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Primeiras postagens
Primeiras postagens
Mensagens: 1
Sexo: Masculino

Cálcular Idade em Javascript mostrando no próprio formulário

24-05-2012 22:36

Estou com o mesmo problema mas só precisaria incluir uma coisa a mais!
Um a função onde o cliente ao digitar a data de nascimento dele apareceria um erro apenas se a idade dele fosse superior a 65 anos dizendo "Os funcionários não podem ter mais de 65 anos"
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17242
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Cálcular Idade em Javascript mostrando no próprio formulário

25-05-2012 12:08

Você pode adicionar logo após essa linha

document.form.idade.value = (calculateAge(junta));

o seguinte:

if((calculateAge(junta)) > 65) { alert('erro'); }

0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 10 postagens
Mais de 10 postagens
Mensagens: 12
Sexo: Masculino

Cálcular Idade em Javascript mostrando no próprio formulário

04-06-2012 20:04

Pessoal, estou tentando utilizar este cálculo porém ao tentar jogar o resultado diretamente para um novo textfield ele retorna dentro do textfield dizendo que não é um número (NaN). O que posso fazer para resolver??
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17242
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Cálcular Idade em Javascript mostrando no próprio formulário

04-06-2012 21:44

Como está o seu script?
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 10 postagens
Mais de 10 postagens
Mensagens: 12
Sexo: Masculino

Cálcular Idade em Javascript mostrando no próprio formulário

06-06-2012 18:10

Aqui está o campo txtAnoNasc, onde será digitada a data para o cálculo da idade e o campo idade onde irá ser jogada a idade após o cálculo.

<td><span class="viabox">               <input name="txtAnoNasc" type="text" id="txtAnoNasc" size="8" maxlength="10" tabindex="7" onblur="calcular();" />               </span> </td> <td><input name="txtIdade" type="text" id="txtIdade" size="10" /> </td>

O formato da data é dd/mm/yy (ex: 04/04/1994).

E aqui está o script que foi passado adaptado para meu formulário.

function calculateAge(dobString) {                 var dob = new Date(dobString);                 var currentDate = new Date();                 var currentYear = currentDate.getFullYear();                 var birthdayThisYear = new Date(currentYear, dob.getMonth(), dob.getDate());                 var age = currentYear - dob.getFullYear();                 if(birthdayThisYear > currentDate) {                 age--;                 }                         return age;                 } function calcular(data) {                 var data = document.frm.txtAnoNasc.value;                 var partes = data.split("/");                 var junta = partes[2]+"-"+partes[1]+"-"+partes[0];                 document.frm.txtIdade.value = (calculateAge(junta)); }

Ao digitar a data no formato que informei ele gera um NaN no campo idade ao invés da idade. Por favor me ajude. Valeu
0
 
Mais de 10 postagens
Mais de 10 postagens
Mensagens: 12
Sexo: Masculino

Cálcular Idade em Javascript mostrando no próprio formulário

06-06-2012 18:16

Obs: Já tentei colocar no onBlur como você tinha informado anteriormente, desta forma onBlur="calcular(this.form)" ... mesmo assim não funcionou :/
0
 
Mais de 10 postagens
Mais de 10 postagens
Mensagens: 12
Sexo: Masculino

Cálcular Idade em Javascript mostrando no próprio formulário

06-06-2012 18:31

Acabei de conseguir só que precisei colocar no formato yy/mm/dd (coloquei 1985/03/05) aí funcionou. Como faço para forçar para que aceite no formato dd/mm/yy ???
0
 
Mais de 10 postagens
Mais de 10 postagens
Mensagens: 12
Sexo: Masculino

Cálcular Idade em Javascript mostrando no próprio formulário

06-06-2012 18:38

Consegui resolver... \o/

Somente inverti a ordem no birthdayThisYear... ao invés de colocar na ordem

var birthdayThisYear = new Date(currentYear, dob.getMonth(), dob.getDate());

inverti para esta abaixo.

function calculateAge(dobString) {                 var dob = new Date(dobString);                 var currentDate = new Date();                 var currentYear = currentDate.getFullYear();                 var birthdayThisYear = new Date(dob.getDate(), dob.getMonth(), currentYear);                 var age = currentYear - dob.getFullYear();                 if(birthdayThisYear > currentDate) {                 age--;                 }                         return age;                 } function calcular(data) {                 var data = document.frm.txtAnoNasc.value;                 var partes = data.split("/");                 var junta = partes[0]+"-"+partes[1]+"-"+partes[2];                 document.frm.txtIdade.value = (calculateAge(junta)); }

Muito obrigado pessoal. Se alguém tiver alguma dúvida que eu possa esclarecer estamos aí. Muito obrigado mesmo Web pela ajuda. Forte abraço a todos.

:clap: :)
0
 
Mais de 10 postagens
Mais de 10 postagens
Mensagens: 12
Sexo: Masculino

Cálcular Idade em Javascript mostrando no próprio formulário

06-06-2012 18:52

Bom está funcionando em parte. Pelo seguinte, se eu coloco do dia 01 até o dia 12 de cada mês ele retorna a idade anterior, exemplo: se coloco 01/06/1985 ele me dá a idade com 27 anos, se coloco depois do dia 12 ele me retorna 13. Pelo que entendi está havendo erro no cálculo do dia que ele está calculando no lugar do mês. Vou tentar resolver e posto se conseguir, se puderem me ajudem. Valeu
0
 
Mais de 10 postagens
Mais de 10 postagens
Mensagens: 12
Sexo: Masculino

Cálcular Idade em Javascript mostrando no próprio formulário

06-06-2012 19:10

Desculpem a confusão, ele não retorna 13 como informei, ele retorna 26 se coloco a partir do dia 13.

"Bom está funcionando em parte. Pelo seguinte, se eu coloco do dia 01 até o dia 12 de cada mês ele retorna a idade anterior, exemplo: se coloco 01/06/1985 ele me dá a idade com 27 anos, se coloco depois do dia 12 ele me retorna 13(aqui o que eu quiz dizer foi 26). Pelo que entendi está havendo erro no cálculo do dia que ele está calculando no lugar do mês. Vou tentar resolver e posto se conseguir, se puderem me ajudem. Valeu "
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17242
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Cálcular Idade em Javascript mostrando no próprio formulário

06-06-2012 20:04

Vi esse problema agora, parece que acontece com os scripts de calcular idade. Verei se acho uma solução.
Pode observar que acontecem também com calculadores de idade online http://www.hscripts.com/scripts/JavaScr ... ulator.php
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado