Ir para conteúdo
Fórum Script Brasil
  • 0

Validação


Cyllwah

Pergunta

Boa Noite, Desenvolvedores!

Gostaria de colocar em meu formulário consistências nos campos citados acima, ou até mesmo em campos futuros que necessitem de preenchimento correto e obrigatório.

Alguêm, por gentileza tem um exemplo para esses tipo de dúvidas.

Atenciosamente

Cyllwah

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

No codigo voce usa o Onclick

onClick=validaCGC_CPF()

Segue a funcao em JavaScript

<script LANGUAGE="JavaScript">

<!--

function check_cpf (StrCPF)

{

x = 0;

soma = 0;

dig1 = 0;

dig2 = 0;

texto = "";

StrCPF1="";

len = StrCPF.length;

x = len -1;

for (var i=0; i <= len - 3; i++)

{

y = StrCPF.substring(i,i+1);

soma = soma + ( y * x);

x = x - 1;

texto = texto + y;

}

dig1 = 11 - (soma % 11);

if (dig1 == 10) dig1=0 ;

if (dig1 == 11) dig1=0 ;

StrCPF1 = StrCPF.substring(0,len - 2) + dig1 ;

x = 11; soma=0;

for (var i=0; i <= len - 2; i++)

{

soma = soma + (StrCPF1.substring(i,i+1) * x);

x = x - 1;

}

dig2= 11 - (soma % 11);

if (dig2 == 10) dig2=0;

if (dig2 == 11) dig2=0;

if ((dig1 + "" + dig2) == StrCPF.substring(len,len-2))

{

// alert ("Número do CPF Válido !");

return true;

}

alert ("Número do CPF Inválido !");

document.form.cpfcgc.focus();

return false;

}

function check_cgc (StrCGC)

{

var varFirstChr = StrCGC.charAt(0);

var vlMult,vlControle,s1, s2 = "";

var i,j,vlDgito,vlSoma = 0;

for ( var i=0; i<=13; i++ ) {

var c = StrCGC.charAt(i);

if( ! (c>="0")&&(c<="9") )

{

alert("Número do CGC Inválido !");

document.form.cpfcgc.focus();

return false; }

if( c!=varFirstChr ) { vaCharCGC = true; }

}

if( ! vaCharCGC ) {

alert("Número do CGC Inválido !");

document.form.cpfcgc.focus();

return false ;

}

s1 = StrCGC.substring(0,12);

s2 = StrCGC.substring(12,15);

vlMult = "543298765432";

vlControle = "";

for ( j=1; j<3; j++ ) {

vlSoma = 0;

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

{ vlSoma += eval( s1.charAt(i) )* eval( vlMult.charAt(i) );}

if( j == 2 ){ vlSoma += (2 * vlDgito); }

vlDgito = ((vlSoma*10) % 11);

if( vlDgito == 10 ){ vlDgito = 0; }

vlControle = vlControle + vlDgito;

vlMult = "654329876543";

}

if( vlControle != s2 ) {

alert("Número do CGC Inválido !");

document.form.cpfcgc.focus();

return false;

return false;

}

else {

// alert("Número do CGC Válido !");

return true;

}

}

function validaCGC_CPF() {

var StrData = document.form.cpfcgc.value;

var CGCPat = /^(\d{2}).(\d{3}).(\d{3})\/(\d{4})-(\d{2})/;

var CGCPat2 = /^(\d{14})/;

var CPFPat = /^(\d{3}).(\d{3}).(\d{3})-(\d{2})/;

var CPFPat2 = /^(\d{11})/;

var matchCGCArray = StrData.match(CGCPat);

var matchCGCArray2 = StrData.match(CGCPat2);

var matchCPFArray = StrData.match(CPFPat);

var matchCPFArray2 = StrData.match(CPFPat2);

if (matchCGCArray == null && matchCGCArray2 == null && matchCPFArray == null

&& matchCPFArray2 == null) {

cpfalert = 'O número do CPF deve ser informado incluindo-se os dois dígitos

verificadores. Não são necessários zeros à esquerda.\nExemplo:

000.000.000-00 ou 00000000000\n\n';

cgcalert = 'O número do CGC deve ser informado incluindo-se os 14 dígitos.

Não são necessários zeros à esquerda.\nExemplo: 00.000.000\/0000-00 ou

00000000000000';

alert('você deve fornecer um CGC ou um CPF valido\n\n' + cpfalert + cgcalert);

return false;

return false;

}

else if(matchCGCArray != null) {

StrData = matchCGCArray[1] + matchCGCArray[2] + matchCGCArray[3] +

matchCGCArray[4] + matchCGCArray[5] ;

check_cgc(StrData);

}

else if(matchCGCArray2 != null) {

StrData = matchCGCArray2[1];

check_cgc(StrData);

}

else if(matchCPFArray != null) {

StrData = matchCPFArray[1] + matchCPFArray[2] + matchCPFArray[3] +

matchCPFArray[4];

check_cpf(StrData);

}

else if(matchCPFArray2 != null) {

StrData = matchCPFArray2[1];

check_cpf(StrData);

}

return false;

}

//-->

</SCRIPT>

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...