Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

marcdes

Mascara CEP

Recommended Posts

Boa tarde,Estou tentando colocar uma máscara no CEP e nuam estou conseguido.o código é esse:<script language="javascript">function MascaraCEP (formato, keypress, objeto){campo = eval (objeto);if (formato=='CEP'){caracteres = '01234567890';separacoes = 1;separacao1 = '-';conjuntos = 2;conjunto1 = 5;conjunto2 = 3;if ((caracteres.search(String.fromCharCode (keypress))!=-1) && campo.value.length < (conjunto1 + conjunto2 + 1)){if (campo.value.length == conjunto1) campo.value = campo.value + separacao1;}else event.returnValue = false;}}</script>..........................................................................................................................................................................No input está assim:<input type="text" name="cep" class="verdana_10_preto_b_n" size="10" onKeyPress="MascaraCEP('CEP', window.event.keyCode, 'document.form1.CEP');">..........................................................................................................................................................................e o erro é esse:'campo.value' é nulo ou não é um objetoalguém pode me ajudar e explicar o que está ocorrendo?grato,Marcondes

Compartilhar este post


Link para o post
Compartilhar em outros sites

Este é um script excelente que formata qualquer campo e tem vários exemplos!

 

<html>

<head>

<title>Máscaras para Formulários</title>

<script language="JavaScript">

/***

* 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;

     }

   }

//Fim da Função Máscaras Gerais

</head>

<body>

<font size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Formatação

de várias Máscaras de Entradas para campos de Formulários</strong></font>

<form name="Form">

<table border="0" cellspacing="2" cellpadding="2">

<tr>

<td width="66"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">cep

 </font></td>

<td width="128"> <input type="text"

name="str_cep"

maxlength="10"

size="10"

onkeypress="return txtBoxFormat(document.Form, 'str_cep', '99.999-999', event);">

</td>

</tr>

<tr>

<td><font size="2" face="Verdana, Arial, Helvetica, sans-serif">cpf  </font></td>

<td> <input type="text"

name="str_cpf"

maxlength="14"

size="14"

onkeypress="return txtBoxFormat(document.Form, 'str_cpf', '999.999.999-99', event);">

</td>

</tr>

<tr>

<td><font size="2" face="Verdana, Arial, Helvetica, sans-serif">cnpj</font></td>

<td><input type="text"

name="str_cnpj"

maxlength="18"

size="18"

onkeypress="return txtBoxFormat(document.Form, 'str_cnpj', '99.999.999/9999-99', event);"></td>

</tr>

<tr>

<td><font size="2" face="Verdana, Arial, Helvetica, sans-serif">data</font></td>

<td><input type="text"

name="str_data"

maxlength="10"

size="10"

onkeypress="return txtBoxFormat(document.Form, 'str_data', '99/99/9999', event);"></td>

</tr>

<tr>

<td><font size="2" face="Verdana, Arial, Helvetica, sans-serif">tel resid</font></td>

<td><input type="text"

name="str_tel2"

maxlength="13"

size="13"

onkeypress="return txtBoxFormat(document.Form, 'str_tel2', '(99) 999-9999', event);"></td>

</tr>

<tr>

<td><font size="2" face="Verdana, Arial, Helvetica, sans-serif">tel cel </font></td>

<td> <input type="text"

name="str_tel"

maxlength="14"

size="14"

onkeypress="return txtBoxFormat(document.Form, 'str_tel', '(99) 9999-9999', event);">

</td>

</tr>

<tr>

<td><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Processo</font></td>

<td><input type="text"

name="str_proc"

maxlength="20"

size="20"

onkeypress="return txtBoxFormat(document.Form, 'str_proc', '99.999999999/9999-99', event);"></td>

</tr>

<tr>

<td><font size="2" face="Verdana, Arial, Helvetica, sans-serif">conta  </font></td>

<td> <input type="text"

name="str_cc"

maxlength="6"

size="10"

onkeypress="return txtBoxFormat(document.Form, 'str_cc', '9999-!', event);">

</td>

</tr>

</table>

</form>

</body>

</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.