DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:
 
 
DevWare  
Novidade: DevMedia lança o DevWare - Saiba mais!

Dicas JavaScript - Parte II

Veja mais um artigo de Emerson Facunte sobre Dicas de JavaScript. Acesso exclusivo para Assinantes.

[fechar]

Você não gostou da qualidade deste conteúdo?

(opcional) Você gostaria de comentar o que não lhe agradou?

Mais melhorias para o desenvolvedor Web

 

Continuando com o artigo de dicas JavaScript, seguem duas boas funções, a primeira para digitar data formatadas e a segunda para validade CPF

Digitando DATAS no campo INPUT <html>

Crie um arquivo com o nome funcoes.js e digite o conteúdo que segue.

 

function DigitaData(campo) {

var data = new String( campo.value );

var wData = '';

var cont = 0;

 

for (i=0; i<data.length ; i++) {

 

if (i <= 1) {

if ( data.charAt(i) >= '0' && data.charAt(i) <= '9' ) {

wData += data.charAt(i);

}

else

{

cont++;

}

}

 

if (i == 2) {

if ( data.charAt(i) == '/' ) {

wData += data.charAt(i);

}

else {

if ( data.charAt(i) >= '0' && data.charAt(i) <= '9' ) {

wData += '/';

wData += data.charAt(i);

cont ++;

}

else {

wData += '/';

cont ++;

}

}

}

 

if (i > 2 && i <= 4) {

if ( data.charAt(i) >= '0' && data.charAt(i) <= '9' ) {

wData += data.charAt(i);

}

else

{

cont++;

}

}

 

if (i == 5) {

if ( data.charAt(i) == '/' ) {

wData += data.charAt(i);

}

else {

if ( data.charAt(i) >= '0' && data.charAt(i) <= '9' ) {

wData += '/';

wData += data.charAt(i);

cont++;

}

else {

wData += '/';

cont++;

}

}

}

 

if (i > 5 && i <= 9) {

if ( data.charAt(i) >= '0' && data.charAt(i) <= '9' ) {

wData += data.charAt(i);

}

else

{

cont++;

}

}

 

if (i > 9 )

{

cont++;

}

 

}

 

if ( cont > 0 )

{

// Atualiza o campo

campo.value = wData;

}

}

 

Vamos testar nossa função:

 

<HTML>

<script language="JavaScript" src="/funcoes.js"></script>

<BODY>

<form name="teste">

<input type=text name=data onKeyUp="DigitaData(this)" onBlur="DigitaData(this)"

</form>

</BODY>

<script language=javascript>

 

function validacpf(){

var i;

s = document.frmCli.txtCpf.value;

var c = s.substr(0,9);

var dv = s.substr(9,2);

var d1 = 0;

for (i = 0; i < 9; i++)

{

d1 += c.charAt(i)*(10-i);

}

if (d1 == 0){

alert("CPF Invalido")

return false;

}

d1 = 11 - (d1 % 11);

if (d1 > 9) d1 = 0;

if (dv.charAt(0) != d1)

{

alert("CPF Invalido")

return false;

}

d1 *= 2;

for (i = 0; i < 9; i++)

{

d1 += c.charAt(i)*(11-i);

}

d1 = 11 - (d1 % 11);

if (d1 > 9) d1 = 0;

if (dv.charAt(1) != d1)

{

alert("CPF Invalido")

return false;

}

return true;

}

</script>

</head><body>

<form name=frmCli>

<input type=text name=txtCpf size=11 maxlength=11 onblur="return validacpf()">CPF

</form>

</body>

Validando CPF

<HTML>

<HEAD>

<script language=javascript>

function validacpf(campo){

var i;

s = campo.value;

var c = s.substr(0,9);

var dv = s.substr(9,2);

var d1 = 0;

for (i = 0; i < 9; i++)

{

d1 += c.charAt(i)*(10-i);

}

if (d1 == 0){

alert("CPF Invalido")

return false;

}

d1 = 11 - (d1 % 11);

if (d1 > 9) d1 = 0;

if (dv.charAt(0) != d1)

{

alert("CPF Invalido")

return false;

}

d1 *= 2;

for (i = 0; i < 9; i++)

{

d1 += c.charAt(i)*(11-i);

}

d1 = 11 - (d1 % 11);

if (d1 > 9) d1 = 0;

if (dv.charAt(1) != d1)

{

alert("CPF Invalido")

return false;

}

return true;

}

</script>

</HEAD>

<BODY>

<form name=teste>

<input type=text name=sCPF size=15 maxlength=11 onblur="return validacpf()">CPF

</form>

</BODY>

 

Nos próximos artigos iremos brincar um pouco com o O.O.

Forte abraço e sucesso a todos!


Emerson Facunte
Emerson Facunte é especialista em aplicações e-business, e membro-fundador do DUG-BR. Ministrou palestras e cursos para mais de 5 mil pessoas em todo território nacional. Pode ser contatado em emerson@facunte.com.br
O que você achou deste post?

    0 COMENTÁRIO

[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.


Nenhum comentário foi postado - seja o primeiro a comentar!
Cursos relacionados
Publicidade
[Fechar]

Você precisa estar logado para dar um feedback.

Clique aqui para efetuar o login
[Fechar]


Este post está fechado. Saiba mais sobre a assinatura MVP!
[Fechar] Você precisa estar logado para dar seu feedback.

Clique aqui para efetuar o login

Caso não tenha um cadastro DevMedia, clique aqui para se cadastrar (gratuito)
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2013 - Todos os Direitos Reservados a web-03