Usuário com melhor resposta
Problema na formatação textbox

Pergunta
-
Galera estou com um pequeno problema aqui e bem chato também..
Tenho um formulário de cadastro onde contém imformações basicas como CPF, DT Nascimento e etc ...
A formatação dos campos como CPF e Data ocorre corretamente, mas ao acionar um evento para gravar esse cadastro no banco quando ocorre algum erro como falta de alguma informação ou usuário já cadastrado essa formatação do CPF, Datas e etc é perdido.
segue código:
<table class="tabela"> <tr > <td class="style1" > CPF </td> <td > <asp:TextBox ID="eacNRCPFCRC" onkeyup="MascaraCPF(CEWFR_RNDR1$eacNRCPFCRC);autotab(this);" runat="server" TabIndex="1" MaxLength="14" Width="103px" Height="23px" ></asp:TextBox> </td> </tr> <tr> <td class="style1" > Nome </td> <td> <asp:TextBox ID="eacNMAUXILIAR" runat="server" width="250px"></asp:TextBox> </td> </tr> <tr> <td class="style1" > Email </td> <td > <asp:TextBox ID="eacDSEMAIL" runat="server" width="250px"></asp:TextBox> </td> </tr> <tr> <td class="style1" > Dt Nascimento </td> <td > <asp:TextBox ID="eacDTNASCMTO" OnKeyPress="MascaraData(CEWFR_RNDR1$eacDTNASCMTO);" runat="server" MaxLength="10" Width="76px" onKeyUp="autotab(this);" ></asp:TextBox> </td> </tr> </table>
JS:
function formataCampo(campo, Mascara, evento) { var boleanoMascara; var Digitato = evento.keyCode; exp = /\-|\.|\/|\(|\)| /g campoSoNumeros = campo.value.toString().replace(exp, ""); var posicaoCampo = 0; var NovoValorCampo = ""; var TamanhoMascara = campoSoNumeros.length; ; if (Digitato != 8) { // backspace for (i = 0; i <= TamanhoMascara; i++) { boleanoMascara = ((Mascara.charAt(i) == "-") || (Mascara.charAt(i) == ".") || (Mascara.charAt(i) == "/")) boleanoMascara = boleanoMascara || ((Mascara.charAt(i) == "(") || (Mascara.charAt(i) == ")") || (Mascara.charAt(i) == " ")) if (boleanoMascara) { NovoValorCampo += Mascara.charAt(i); TamanhoMascara++; } else { NovoValorCampo += campoSoNumeros.charAt(posicaoCampo); posicaoCampo++; } } campo.value = NovoValorCampo; return true; } else { return true; } } //adiciona mascara de data function MascaraData(data) { if (mascaraInteiro(data) == false) { event.returnValue = false; } return formataCampo(data, '00/00/0000', event); } //adiciona mascara ao CPF function MascaraCPF(cpf) { if (mascaraInteiro(cpf) == false) { event.returnValue = false; } return formataCampo(cpf, '000.000.000-00', event); }
COMO POSSO RESOLVER ESSE PROBLEMA ??
Respostas
-
Galera o erro estava no meu .cs quando retornava o erro ele tirava a formatação e depois jogava para o textbox ...
mas Valeu ae !!!
- Marcado como Resposta Raul Guilherme quinta-feira, 28 de junho de 2012 19:23
Todas as Respostas
-
-
Amigo,
Me desculpe ser rude...mas troca esse lixo por algo que realmente funcione, me desculpe!
Aqui onde eu trabalho o pessoal tinha um script parecido com o seu, mas dava muito problema então estou mudando tudo para JQUERY + MEIOMASK. A biblioteca é simples e muito funcional e tem trocentas mascaras prontas e para utilizar só colocar "alt="cpf"" ou campo.Link da biblioteca
http://www.meiocodigo.com/projects/meiomask/Código de exemplo:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Untitled Document</title> <script language="javascript" type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.7.2.min.js"></script> <script language="javascript" type="text/javascript" src="http://github.com/fabiomcosta/jquery-meiomask/raw/08b92c411a60ace9131de697179fda433178b8d9/jquery.meio.mask.min.js"></script> <script> $(document).ready(function(e) { $('input:text').setMask(); }); </script> </head> <body> <form> CPF <input type="text" name="teste" size="20" alt="cpf" /> <br /> CNPJ <input type="text" name="teste" size="20" alt="cnpj" /> <br /> DATA <input type="text" name="teste" size="20" alt="date" /> <br /> DECIMAL <input type="text" name="teste" size="20" alt="decimal" /> <br /> </form> </body> </html>
Boa sorte!
Não esqueça de marcar como útil uma resposta que te ajude.
"A diversão é a alma do negócio"- Sugerido como Resposta Cleber H. Neves quinta-feira, 28 de junho de 2012 10:51
-
Galera o erro estava no meu .cs quando retornava o erro ele tirava a formatação e depois jogava para o textbox ...
mas Valeu ae !!!
- Marcado como Resposta Raul Guilherme quinta-feira, 28 de junho de 2012 19:23