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

Validar Data


mestre fyoda

Pergunta

eu gostaria de integrar um script de validar data dentro da minha funcao validar .

a data vai vir nesse formato 25/12/1982

me ajudem

<script language="javascript">
<!--
function valida() {
var nome=document.formulario.nome.value;
var sobre_nome=document.formulario.sobre_nome.value;
var email=document.formulario.email.value;
var estado=document.formulario.estado.value;
var login=document.formulario.login.value;
var senha=document.formulario.senha.value;
var confirma_senha=document.formulario.confirma_senha.value;


if (nome=="") { 
window.alert(" » Preencha o campo Nome « ");
document.formulario.nome.focus();
return false;
}
if (sobre_nome=="") {
window.alert(" » Preencha o campo Sobre Nome « ");
document.formulario.sobre_nome.focus();
return false;
}



if (estado == "#" ) {
window.alert(" » Escolha o seu Estado « ");
document.formulario.estado.focus();
return false;
}
if (login=="") {
window.alert(" » Preencha o campo Login « ");
document.formulario.login.focus();
return false;
}
if (senha=="") {
window.alert(" » Preencha o campo Senha « ");
document.formulario.senha.focus();
return false;
}
if (confirma_senha=="") {
window.alert(" » Preencha o campo Confirma Senha « ");
document.formulario.confirma_senha.focus();
return false;
}
if (senha!=confirma_senha) {
window.alert(" » Senha diferenta do Confirma Senha « ");
document.formulario.confirma_senha.focus();
return false;
}
if (email=="") {
window.alert(" » Preencha o campo E-Mail « ");
document.formulario.email.focus();
return false;
}
if (email.indexOf("@") == -1 || email.indexOf(".") == -1) {
window.alert(" » E-Mail inválido « ");
document.formulario.email.focus();
return false;
}

return true;
document.formulario.submit();
}
//-->
</script>

<script language="JavaScript">

function txtBoxFormat(objForm, strField, sMask, evtKeyPress) {
     var i, nCount, sValue, fldLen, mskLen,bolMask, sCod, nTecla;

     if(document.all) { // Internet Explorer
       nTecla = evtKeyPress.keyCode; }
     else if(document.layers) { // Nestcape
       nTecla = evtKeyPress.which;
     }

     sValue = objForm[strField].value;

     // Limpa todos os caracteres de formatação que
     // já estiverem no campo.
     sValue = sValue.toString().replace( "-", "" );
     sValue = sValue.toString().replace( "-", "" );
     sValue = sValue.toString().replace( ".", "" );
     sValue = sValue.toString().replace( ".", "" );
     sValue = sValue.toString().replace( "/", "" );
     sValue = sValue.toString().replace( "/", "" );
     sValue = sValue.toString().replace( "(", "" );
     sValue = sValue.toString().replace( "(", "" );
     sValue = sValue.toString().replace( ")", "" );
     sValue = sValue.toString().replace( ")", "" );
     sValue = sValue.toString().replace( " ", "" );
     sValue = sValue.toString().replace( " ", "" );
     fldLen = sValue.length;
     mskLen = sMask.length;

     i = 0;
     nCount = 0;
     sCod = "";
     mskLen = fldLen;

     while (i <= mskLen) {
       bolMask = ((sMask.charAt(i) == "-") || (sMask.charAt(i) == ".") || (sMask.charAt(i) == "/"))
       bolMask = bolMask || ((sMask.charAt(i) == "(") || (sMask.charAt(i) == ")") || (sMask.charAt(i) == " "))

       if (bolMask) {
         sCod += sMask.charAt(i);
         mskLen++; }
       else {
         sCod += sValue.charAt(nCount);
         nCount++;
       }

       i++;
     }

     objForm[strField].value = sCod;

     if (nTecla != 8) { // backspace
       if (sMask.charAt(i-1) == "9") { // apenas números...
         return ((nTecla > 47) && (nTecla < 58)); } // números de 0 a 9
       else { // qualquer caracter...
         return true;
       } }
     else {
       return true;
     }
   }


</script>
<form name="formulario">
<input type="text" maxlength="10" class="campos" name="data_nas" onkeypress="return txtBoxFormat(document.formulario, 'data_nas', '99/99/9999', event);">
</form>

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Olá.....

Abaixo segue um exemplo interessante que valida e dá máscara ao campo.

function mascara_data(data){ 
              var mydata = ''; 
              mydata = mydata + data; 
              if (mydata.length == 2){ 
                  mydata = mydata + '/'; 
                  document.forms[0].data.value = mydata; 
              } 
              if (mydata.length == 5){ 
                  mydata = mydata + '/'; 
                  document.forms[0].data.value = mydata; 
              } 
              if (mydata.length == 10){ 
                  verifica_data(); 
              } 
          } 
           
          function verifica_data () { 

            dia = (document.forms[0].data.value.substring(0,2)); 
            mes = (document.forms[0].data.value.substring(3,5)); 
            ano = (document.forms[0].data.value.substring(6,10)); 

            situacao = ""; 
            // verifica o dia valido para cada mes 
            if ((dia < 01)||(dia < 01 || dia > 30) && (  mes == 04 || mes == 06 || mes == 09 || mes == 11 ) || dia > 31) { 
                situacao = "falsa"; 
            } 

            // verifica se o mes e valido 
            if (mes < 01 || mes > 12 ) { 
                situacao = "falsa"; 
            } 

            // verifica se e ano bissexto 
            if (mes == 2 && ( dia < 01 || dia > 29 || ( dia > 28 && (parseInt(ano / 4) != ano / 4)))) { 
                situacao = "falsa"; 
            } 
    
            if (document.forms[0].data.value == "") { 
                situacao = "falsa"; 
            } 
    
            if (situacao == "falsa") { 
                alert("Data inválida!"); 
                document.forms[0].data.focus(); 
            } 
          } 
<input type="text" name="data" OnKeyUp="mascara_data(this.value)" maxlength="10">

Abraços.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...