// JavaScript Document
function mostrar(btn) {
        //btn = frm.botao;
        btn.disabled == true ? btn.disabled = false : btn.disabled = true;    
    }    

function soNums(e,args)
{		
	// Função que permite apenas teclas numéricas e 
	// todos os caracteres que estiverem na lista
	// de argumentos.
	// Deve ser chamada no evento onKeyPress desta forma
	//  onKeyPress ="return (soNums(event,'(/){,}.'));"
	// caso queira apenas permitir caracters

		if (document.all){var evt=event.keyCode;} // caso seja IE
		else{var evt = e.charCode;}	// do contrário deve ser Mozilla
		var chr= String.fromCharCode(evt);	// pegando a tecla digitada
		// Se o código for menor que 20 é porque deve ser caracteres de controle
		// ex.: <ENTER>, <TAB>, <BACKSPACE> portanto devemos permitir
		// as teclas numéricas vão de 48 a 57
		if (evt <20 || (evt >47 && evt<58) || (args.indexOf(chr)>-1 ) ){return true;}
		return false;
}	

/** 
	Mascará para Valor:
	Exemplo de Uso
		<input name="valor" type="text" id="valor" onKeyPress="FormataValor(this.id, 10, event)"     size="10" maxlength="10"  />
*/

function FormataValor(id,tammax,teclapres) {  
        if(window.event) { // Internet Explorer
         var tecla = teclapres.keyCode; }
        else if(teclapres.which) { // Nestcape / firefox
         var tecla = teclapres.which;
        }
    

vr = document.getElementById(id).value;
vr = vr.toString().replace( "/", "" );
vr = vr.toString().replace( "/", "" );
vr = vr.toString().replace( ",", "" );
vr = vr.toString().replace( ".", "" );
vr = vr.toString().replace( ".", "" );
vr = vr.toString().replace( ".", "" );
vr = vr.toString().replace( ".", "" );
tam = vr.length;

if (tam < tammax && tecla != 8){ tam = vr.length + 1; }

if (tecla == 8 ){ tam = tam - 1; }

if ( tecla == 8 || tecla >= 48 && tecla <= 57 || tecla >= 96 && tecla <= 105 ){
if ( tam <= 2 ){
document.getElementById(id).value = vr; }
if ( (tam > 2) && (tam <= 5) ){
document.getElementById(id).value = vr.substr( 0, tam - 2 ) + ',' + vr.substr( tam - 2, tam ); }
if ( (tam >= 6) && (tam <= 8) ){
document.getElementById(id).value = vr.substr( 0, tam - 5 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ); }
if ( (tam >= 9) && (tam <= 11) ){
document.getElementById(id).value = vr.substr( 0, tam - 8 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ); }
if ( (tam >= 12) && (tam <= 14) ){
document.getElementById(id).value = vr.substr( 0, tam - 11 ) + '.' + vr.substr( tam - 11, 3 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam ); }
if ( (tam >= 15) && (tam <= 17) ){
document.getElementById(id).value = vr.substr( 0, tam - 14 ) + '.' + vr.substr( tam - 14, 3 ) + '.' + vr.substr( tam - 11, 3 ) + '.' + vr.substr( tam - 8, 3 ) + '.' + vr.substr( tam - 5, 3 ) + ',' + vr.substr( tam - 2, tam );}
}
}

/**
	Máscara para Data / Validação de Data
	OnKeyUp="mascara_data(this)"
*/
function mascara_data(data){ 
              var mydata = ''; 
             mydata = mydata + data.value; 
              if (mydata.length == 2){ 
                  mydata = mydata + '/'; 
                  data.value = mydata; 
              } 
              if (mydata.length == 5){ 
                  mydata = mydata + '/'; 
                  data.value = mydata; 
              } 
              if (mydata.length == 10){ 
                  verifica_data( data ); 
              } 
          } 
           
          function verifica_data (data) { 

            dia = (data.value.substring(0,2)); 
            mes = (data.value.substring(3,5)); 
            ano = (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 (data.value == "") { 
                situacao = "falsa"; 
            } 
    
            if (situacao == "falsa") { 
                alert("Data inválida!"); 
                data.focus(); 
            } 
          } 