Mascara e validacao javascript

De Tek-System Wiki
Ir para navegação Ir para pesquisar

Segue o codigo para validacao e mascara. Onde dob é o id do nó html.



    <script type="text/javascript" >

        // Mascara da data - INICIO
        document.getElementById("dob").onkeyup = function(){
            v = document.getElementById("dob").value;
            v=v.replace(/\D/g,"");
            v=v.replace(/(\d{2})(\d)/,"$1/$2");
            v=v.replace(/(\d{2})(\d)/,"$1/$2");

            v=v.replace(/(\d{2})(\d{2})$/,"$1$2");
            document.getElementById("dob").value = v;
            verificaData(v);
        }
        // Mascara da data - INICIO


        //Validacao da data - INICIO

          function verificaData (data) {

            dia = (data.substring(0,2)); 
            mes = (data.substring(3,5));
            ano = (data.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 (data == "") { 
                situacao = "falsa"; 
            }

            if (situacao == "falsa") { 
                document.getElementById("mage-error-data-nasc").style.display = "block";
                console.log('DATA INVALIDA');
                return false;
            }else{
                console.log('DATA VALIDA');
              document.getElementById("mage-error-data-nasc").style.display = "none";
              return true;

            }
          }

        //Validacao da data - FIM

    </script>