function Vazio(campo){    if(campo.value == "")	return true;    else    return false;}function RadioNaoSelecionado(campo){    if(campo.length)    {        for(var i = 0;  i < campo.length; i++)        {            if(campo[i].checked)                return false;        }        return true;    }    else    {        if(campo.checked)            return false;        else            return true;    }}function NaoSelecionado(campo){    if(campo.options)    {	if(campo.options[campo.selectedIndex].value == "-1")		return true;	else		return false;    }    else if(campo.value)    {        return Vazio(campo);    }    else        return true;}function Inteiro(texto){   	if(texto.length == 0)		return false; 			for (var i=0; i < texto.length; i++)	{		if (!CaracterNumerico(texto.charAt(i)))			return false;	}		return true;}function Inteiro1(texto){  	if(texto=="0.0")	{          return true;    }    else    {		if(texto.length == 0)			return false; 			for (var i=0; i < texto.length; i++)	{		if (texto.charAt(i) != ".")		if (!CaracterNumerico(texto.charAt(i)))			return false;	}		return true;}}function CaracterNumerico(caracter){ 	return (caracter >= "0" && caracter <=  "9" ? true : false );}function DataValida(dia, mes, ano){ 	if (!Inteiro(dia) || !Inteiro(mes) || !Inteiro(ano))		return false;			var t_dia = parseInt(dia,10);	var t_mes = parseInt(mes,10);	var t_ano = parseInt(ano,10);		return ((t_dia < 1 || t_dia > DiasMes(t_mes, t_ano)) || (t_mes < 1 || t_mes > 12) || (t_ano < 1900) ? false : true );}function DiasMes( p_mes, p_ano ){  var t_dias_nor  = [31,28,31,30,31,30,31,31,30,31,30,31];  var t_dias_bis  = [31,29,31,30,31,30,31,31,30,31,30,31];  return ( Bissexto(p_ano) ? t_dias_bis[p_mes-1] : t_dias_nor[p_mes-1] );}function Bissexto( p_ano ){  return ( p_ano%4==0 ? (p_ano%100==0 ?  (p_ano%400==0 ? true : false) : true) : false);}function Email(p_parm){	return ( p_parm.indexOf("@") > 0 && p_parm.indexOf("@") != p_parm.length - 1 ? true : false );}	function CEP( p_parm ) {  var re_cep = /\d{5}\-\d{3}/;  return ( p_parm.length == 9 ?             ( p_parm.substr("-") != "" ?                 ( re_cep.test(p_parm) ?                     true : false )	 : false ) : ( (p_parm.length == 8 || p_parm.length == 5)  && Inteiro(p_parm) ? true : false ) );}function CNPJ( p_parm ) {  var re_cnpj = /\d{2}\.\d{3}\.\d{3}\/\d{4}\-\d{2}/;  var t_formato = ( p_parm.length == 18 ? ( re_cnpj.test(p_parm) ? true : false )				        : ( p_parm.length == 14 && Inteiro(p_parm) ? true : false ) );  if ( !t_formato ) return false;  // calcula dígitos verificadores 99.999.999/0001-XY  else    {      var i, j, k, t_soma=0, t_digito=0, t_resto=0;      // primeiro digito X      for (i=5,k=0; i>1; i--,k++)          t_soma += Number(p_parm.charAt(k))*i;      for (i=9; i>1; i--,k++)          t_soma += Number(p_parm.charAt(k))*i;      t_resto = t_soma % 11;      t_digito = ( t_resto < 2 ? 0 : (11-t_resto) );      if ( p_parm.charAt(12) != t_digito ) return false;      // segundo digito Y      for (t_soma=0,i=6,k=0; i>1; i--,k++)          t_soma += Number(p_parm.charAt(k))*i;      for (i=9; i>2; i--,k++)          t_soma += Number(p_parm.charAt(k))*i;      t_soma += t_digito * 2;      t_resto = t_soma % 11;      t_digito = ( t_resto < 2 ? 0 : (11-t_resto) );      if ( p_parm.charAt(13) != t_digito ) return false;    }  return true;}function CPF( p_parm ) {    var re_cpf = /\d{3}\.\d{3}\.\d{3}\-\d{2}/;  var t_formato = ( p_parm.length == 14 ? ( re_cpf.test(p_parm) ? true : false )                                        : ( p_parm.length == 11 && Inteiro(p_parm) ? true : false ) );  if ( !t_formato ) return false;  // calcula dígitos verificadores 999.999.999-XY  else    {      var i, j, k, t_soma1=0, t_soma2=0, t_digito=0, t_resto=0;      // primeiro digito X      for (i=10,j=11,k=0; i>1; i--,j--,k++)  {          t_soma1 += Number(p_parm.charAt(k))*i;          t_soma2 += Number(p_parm.charAt(k))*j;      }      t_resto = t_soma1 % 11;      t_digito = ( t_resto < 2 ? 0 : (11-t_resto) );      if ( p_parm.charAt(9) != t_digito ) return false;      // segundo digito Y      t_soma2 += t_digito * 2;      t_resto = t_soma2 % 11;      t_digito = ( t_resto < 2 ? 0 : (11-t_resto) );      if ( p_parm.charAt(10) != t_digito ) return false;    }  return true;}function fnFormataValor(campo){    var valor = campo.value;    campo.value = fnFormataDinheiro(valor);}function fnFormataDinheiro(txt_valor){    var valor = txt_valor;    valor = valor.replace(".","").replace(",","");	// TIRA CARACTERES INVÁLIDOS    var temp_valor = "";    for(var i = 0; i < valor.length; i++)    {        if(valor.charAt(i) >= '0' && valor.charAt(i) <= '9')            temp_valor = temp_valor + valor.charAt(i);    }        valor = temp_valor;	var tamanho = valor.length;        if(tamanho > 2)    {        var centavos = valor.substring(valor.length - 2,valor.length);        var inteiro = valor.substring(0,valor.length - 2);        var inteiroFormatado = "";        var cont = 0;        for(var i = inteiro.length - 1; i >= 0; i--)        {            inteiroFormatado = inteiro.charAt(i) + inteiroFormatado;            cont++;            if(cont == 3 && i > 0)            {                inteiroFormatado = "." + inteiroFormatado;                cont = 0;            }                                    }                           temp_valor =  inteiroFormatado + "," + centavos;    }        return temp_valor;}function LimpaValor(valor){	var temp_valor = "";    for(var i = 0; i < valor.length; i++)    {        if(valor.charAt(i) >= '0' && valor.charAt(i) <= '9')            temp_valor = temp_valor + valor.charAt(i);    }    return temp_valor;}/*** * Descrição.: formata um campo do formulário de * acordo com a máscara informada... * Parâmetros: - objForm (o Objeto Form) * - strField (string contendo o nome * do textbox) * - sMask (mascara que define o * formato que o dado será apresentado, * usando o algarismo "9" para * definir números e o símbolo "!" para * qualquer caracter... * - evtKeyPress (evento) * Uso.......: <input type="textbox" * name="xxx"..... * onkeypress="return txtBoxFormat(document.rcfDownload, 'str_cep', '99999-999', event);"> * Observação: As máscaras podem ser representadas como os exemplos abaixo: * CEP -> 99.999-999 * CPF -> 999.999.999-99 * CNPJ -> 99.999.999/9999-99 * Data -> 99/99/9999 * Tel Resid -> (99) 999-9999 * Tel Cel -> (99) 9999-9999 * Processo -> 99.999999999/999-99 * C/C -> 999999-! * E por aí vai... ***/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;     }   }   function fnFormataDecimal(campo, numCasas){    var valor = campo.value;    campo.value = fnFormataValorDecimal(valor, numCasas);}function fnFormataValorDecimal(txt_valor, numCasas){    var valor = txt_valor;    valor = valor.replace(".","").replace(",","");	// TIRA CARACTERES INVÁLIDOS    var temp_valor = "";    for(var i = 0; i < valor.length; i++)    {        if(valor.charAt(i) >= '0' && valor.charAt(i) <= '9')            temp_valor = temp_valor + valor.charAt(i);    }        valor = temp_valor;	var tamanho = valor.length;        if(tamanho > numCasas)    {        var centavos = valor.substring(valor.length - numCasas,valor.length);        var inteiro = valor.substring(0,valor.length - numCasas);        var inteiroFormatado = "";        var cont = 0;        for(var i = inteiro.length - 1; i >= 0; i--)        {            inteiroFormatado = inteiro.charAt(i) + inteiroFormatado;            cont++;            if(cont == 3 && i > 0)            {                inteiroFormatado = "." + inteiroFormatado;                cont = 0;            }                                    }                           temp_valor =  inteiroFormatado + "," + centavos;    }        return temp_valor;}