Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

dioss

Validar data

Recommended Posts

Galera, preciso da ajuda de vocês, estou iniciando em javascript e estou precisando alterar essa função

 

 

<html>
<head>
<title></title>
</head>
<body>
<form method="get" name="form1" onsubmit="return testa_data()" action="#">
dia <input type="text" name="dia" size="3" maxlength="2" >
mes <input type="text" name="mes" size="3" maxlength="2" >
ano <input type="text" name="ano" size="5" maxlength="4" >
<br>
<input type="submit" value="enviar">
</form>
<script type="text/javascript">
function testa_data(){
var dia1=parseInt(window.document.form1.dia.value);
var mes1=parseInt(window.document.form1.mes.value);
var ano1=parseInt(window.document.form1.ano.value);
var datadigitada= new Date(ano1,(mes1-1),dia1);
var miliqq=datadigitada.getTime();
var mydate= new Date()
var mili=mydate.getTime();
var diaqq=parseInt(datadigitada.getDate());
var mesqq=parseInt(datadigitada.getMonth())+1;
if((dia1!=diaqq) || (mes1!=mesqq)){
alert("Data inválida");
window.document.form1.dia.focus();
return false;
}
else if(miliqq > mili){
alert("Data Digitada maior que data atual");
window.document.form1.dia.focus();
return false;
}
}
</script>
</body>
</html>
essa função valida a data de nascimento, se a data de nascimento digitada pelo usuário for maior que a data atual a função da um alert dizendo que "Data Digitada maior que data atual".
meu problema é o seguinte, nesse formulário tem três text onde o usuário digita "dia, mês e ano", eu preciso alterar para que seja só um text "data de nascimento" com maxlength de 8 digitos, como sou iniciante no javascript estou com dificuldade para fazer essa alteração no meu código, se alguém puder dar uma força eu ficaria muito agradecido.

Compartilhar este post


Link para o post
Compartilhar em outros sites

trabalhando com um campo só vc vai ter que separar as partes da string em dia, mês e ano e depois comparar com a data atual.

 

aconselho vc a inserir uma mascara neste campo para adicionar ( / ) automaticamente ficando dia/mes/ano ajuda-rá a quebrar a string usando o método split.

Compartilhar este post


Link para o post
Compartilhar em outros sites

e como eu faria isso ? pode dar um exemplo por gentileza ?



nesse meu caso eu não vou poder separar dia, mês e ano com " /", a minha data tem que ser (11052013) por exemplo.

Compartilhar este post


Link para o post
Compartilhar em outros sites


window.onload = function (){

 

var dia, mes, ano;

var dataAtual = "11052013";

 

dia = dataAtual.slice(0,2);

mes = dataAtual.slice(2,4);

ano = dataAtual.slice(4,8);

 

alert("Dia:"+dia+" Mes:"+mes+" Ano:"+ano);

 

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara, agradeço ae pela ajuda, mas não consegui adaptar o seu exemplo no meu código, você poderia tentar adaptar esse seu exemplo no meu código, muito grato pela ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.