Jump to content
Fórum Script Brasil
  • 0

Validação


Cyllwah

Question

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 to comment
Share on other sites

3 answers to this question

Recommended Posts

  • 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 to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.1k
    • Total Posts
      652k
×
×
  • Create New...