Ir para conteúdo
Fórum Script Brasil
  • 0

Validação De Datas


Luiz Humberto

Pergunta

3 respostass a esta questão

Posts Recomendados

  • 0

tenta:

<script language="JavaScript">
function FormataDATA(nome){
    DATA = getValue(nome);
    DATA = Limp(DATA);
    if(DATA.length == 8) {
        if(parseInt(DATA.substring(0,2)) > 31){
  	alert('Você digitou o dia incorretamente, a data foi apagada. Digite novamente');
  	DATA = "";
        } else {
            dia = DATA.substring(0,2);
            if(parseInt(DATA.substring(2,4)) > 12){
             alert('Você digitou o mês incorretamente, a data foi apagada. Digite novamente');
             DATA = "";
      } else {
                mes = DATA.substring(2,4);
                ano = DATA.substring(4,8);
                if(ano < 1900 || ano > 2100){
                    alert("Você digitou o ano incorretamente, a data foi apagada. Digite novamente");
                    DATA = "";
                } else {
                    tmpMes = mes -1;
                    tmp = new Date(ano, tmpMes, dia);
                    m = tmp.getMonth();
                    if(tmpMes != m) {
                    	alert('Data Inválida. A Data foi apagada, digite novamente');
                        DATA = "";
    	} else
                  DATA = dia + ('/') + mes + ('/') + ano;
                }
      }
    	}
    } else {
        if(DATA.length > 0){
            alert('Verifique a data digitada, pois está incorreta. A data deve ser digitada com seus 8 dígitos (dd mm aaaa). Ex.: 01/01/2004 (As barras não são necessárias.)');
            DATA = "";
    	}
    }
    setValue(nome, DATA);
}
function getValue(nome){
var obj = eval("document.forms[0]."+nome+".value");
return obj;
}
function setValue(nome, valor){
obj = eval("document.forms[0]."+nome);
obj.value = valor;
}
function Limp(c){
qtd = c.length;
var v = '';
for (i=0; i < qtd; i++)
for(t=0; t < 10; t++){
if(c.substring(i,i+1) == t && c.substring(i,i+1) != " ") v += c.substring(i,i+1);}
return(v);
}
</script>

Alterei o código, agora está funfando certinho...

Editado por Crystian
Link para o comentário
Compartilhar em outros sites

  • 0

Esse script que o OSJunior postou, foi eu quem desenvolveu e quando postei eu me esqueci de mudar uma coisa, que é a forma de visualizar o erro. A variavel erroValue é para mostrar o erro dentro de uma caixa div. Para funciona efetivamente você tem que trocar essa variavel por um alert() ou outra forma de mostrar o erro.

PS.:Mas parece q não está correta a function q ele passou, tem function dentro de function, vou dar uma olhada e qualquer coisa eu edito...

Abraço

Crystian

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...