Jump to content


Photo

Problemas Em Validar Data


  • Faça o login para participar
2 replies to this topic

#1 rafa-martin

rafa-martin

    24 Horas

  • Usuários
  • 406 posts
  • Sexo:Não informado

Posted 31/03/2006, 14:32

pessoal, estou com um problema.

eu tenho um campo data onde é formatado automaticamente. Conforme o usuário vai digitando a data as barras (/) são colocadas automaticamente.

então eu fiz uma função onde o ano não pode ser menor que 1900. Aí está ela:

function val_data()
{
var DateValue = oFrm.InicioMandato.value;
var DateValue1 = oFrm.FimMandato.value;

year = DateValue.substr(6,6);
year1 = DateValue1.substr(6,6);
//alert(year);
if (year < 1900 || year1 < 1900)
{
alert('A data inicial e/ou data final deve ser maior ou igual a 1900.');
}
else
{
return true;
}

}

então eu tenho essa data por exemplo: 31/03/2006 ele vai comparar 2006 com 1900. até aí blz? agora o problema é que se for gravado uma data assim 1/3/2006 então dá pau, porque ele não pega o ano 2006, já q defini assim year = DateValue.substr(6,6);

existe algum modo de pegar o ano mesmo se for 1/3/2006 e 31/03/2006? se alguém souber me fale por favor ou se existe um outro modo eu agradeço desde já.

vlw

#2 edmais

edmais

    Just do it!

  • Usuários
  • 797 posts
  • Sexo:Não informado
  • Localidade:BH - MG

Posted 31/03/2006, 14:46

faz o seguinte:

var ano_t = "31/06/2006";
var ano_s = ano_t.split("/");

var ano = ano_s[2];

alert(ano);

Eduardo Batista

#3 rafa-martin

rafa-martin

    24 Horas

  • Usuários
  • 406 posts
  • Sexo:Não informado

Posted 31/03/2006, 15:40

galera consegui resolver o problema com uma outra função q fiz:

var x = oFrm.DataNascimento.value.length;
year = DateValue.substr((x-4),4);

if (year < 1900)
{
alert('A data de nascimento deve ser maior ou igual a 1900.');
}
else
{
return false;
}




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq