Ir para conteúdo

POWERED BY:

Arquivado

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

egalauber

Javascript funciona no IE e não funciona no Firefox

Recommended Posts

formulário html e script javascript.

 

o script impede q digite números no campo "nome", q digite letras nos campos "telefone", "celular", "cnpj" e "cpf", coloca máscara nos campos "telefone", "celular", "cnpj" e "cpf", e valida os campos "cnpj", "cpf" e "email".

 

funciona perfeitamente no IE

mas no Firefox...

 

é possível digitar letras ou números no campo "nome", "cpf" e "cnpj", e não coloca máscara nos campos "cnpj" e "cpf".

 

qual é o problema?? pq funciona no IE e não funciona no Firefox??

 

segue o script:

 

<script language="javascript">
// JavaScript Document
//adiciona mascara de cnpj
function MascaraCNPJ(cnpj){
	if(mascaraInteiro(cnpj)==false){
		event.returnValue = false;
	}	
	return formataCampo(cnpj, '00.000.000/0000-00', event);
}

//adiciona mascara ao CPF
function MascaraCPF(cpf){
	if(mascaraInteiro(cpf)==false){
		event.returnValue = false;
	}	
	return formataCampo(cpf, '000.000.000-00', event);
}


//valida o CPF digitado
function ValidarCPF(Objcpf){
	var cpf = Objcpf.value;
	exp = /\.|\-/g
	cpf = cpf.toString().replace( exp, "" ); 
	var digitoDigitado = eval(cpf.charAt(9)+cpf.charAt(10));
	var soma1=0, soma2=0;
	var vlr =11;
	
	for(i=0;i<9;i++){
		soma1+=eval(cpf.charAt(i)*(vlr-1));
		soma2+=eval(cpf.charAt(i)*vlr);
		vlr--;
	}	
	soma1 = (((soma1*10)%11)==10 ? 0:((soma1*10)%11));
	soma2=(((soma2+(2*soma1))*10)%11);
	
	var digitoGerado=(soma1*10)+soma2;
	if(digitoGerado!=digitoDigitado && cpf != ""){  
		alert('CPF Invalido!');		
		Objcpf.focus();
		}
}

//valida numero inteiro com mascara
function mascaraInteiro(){
	if (event.keyCode < 48 || event.keyCode > 57){
		event.returnValue = false;
		return false;
	}
	return true;
}

//valida o CNPJ digitado
function ValidarCNPJ(ObjCnpj){
	var cnpj = ObjCnpj.value;
	var valida = new Array(6,5,4,3,2,9,8,7,6,5,4,3,2);
	var dig1= new Number;
	var dig2= new Number;
	
	exp = /\.|\-|\//g
	cnpj = cnpj.toString().replace( exp, "" ); 
	var digito = new Number(eval(cnpj.charAt(12)+cnpj.charAt(13)));
		
	for(i = 0; i<valida.length; i++){
		dig1 += (i>0? (cnpj.charAt(i-1)*valida[i]):0);	
		dig2 += cnpj.charAt(i)*valida[i];	
	}
	dig1 = (((dig1%11)<2)? 0:(11-(dig1%11)));
	dig2 = (((dig2%11)<2)? 0:(11-(dig2%11)));
	
	if(((dig1*10)+dig2) != digito && cnpj != ""){	
		alert('CNPJ Invalido!');
		ObjCnpj.focus();
		}
}

//formata de forma generica os campos
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; 
	}
}




function ValidaEmail()
{
  var obj = eval("document.cadastrocliente.email");
  var txt = obj.value;
  if ((txt.length != 0) && ((txt.indexOf("@") < 1) || (txt.indexOf('.') < 7)))
  {
	alert('Este email parece ser um email inválido. Por favor digite outro!');
	obj.focus();
  }
}


function Valida(){

var nome = document.cadastrocliente.nome.value;
var telefone = document.cadastrocliente.telefone.value;
var celular = document.cadastrocliente.celular.value;
var cnpj = document.cadastrocliente.cnpj.value;
var cpf = document.cadastrocliente.cpf.value;
var email = document.cadastrocliente.email.value;

if(nome != "" && telefone != "" && celular != "" && documento != "" && endereco != "" && bairro != "" && cidade != "" && pergunta != "x" && resposta != "" && email != "" && senha != "" && confirmaSenha != ""){
 document.cadastrocliente.envia.disabled = false;
 return
}
}

//função que restringe caracteres digitados. Números ou letras
function valida_digitos(Ncampo)
{
		 //caracteres permitidos
		 if(Ncampo=="nome")
		 er=/[0-9]/;
		 if(Ncampo=="telefone" || Ncampo=="celular")
		 er=/[a-z]/;
		 digito=document.getElementById(Ncampo).value;
		 var tempor;
		 
		  for (var i=0;i<digito.length; i++) {
			tempor = digito.substring(i,i+1); 
			//se digitos não igual aos caracteres informado na variavel digitos, então é deletado
			  if (er.test(digito)) {
			  document.getElementById(Ncampo).value=digito.substring(0,digito.length-1);
			 
			 return false;
			  break;
			}
   		}
 }


function txtBoxFormat(objeto, 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;
} else {
	nTecla = evtKeyPress.which;
	if (nTecla == 8) {
		return true;
	}
}

	sValue = objeto.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( ")", "" );
	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) == "/") || (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++;
	}

	objeto.value = sCod;

	if (nTecla != 8) { // backspace
	  if (sMask.charAt(i-1) == "9") { // apenas números...
		return ((nTecla > 47) && (nTecla < 58)); } 
	  else { // qualquer caracter...
		return true;
	  } 
	}
	else {
	  return true;
	}
  }

</script>


<form action="cadastrando cliente.php" method="post" name="cadastrocliente">

Nome
<input type="text" name="nome" onKeyPress="valida_digitos('nome')" onKeyUp="return Valida()" maxlength="50" size="50" /><br><br>

Telefone
<input type="text" name="telefone" onKeyDown="valida_digitos('telefone')" onKeyPress="return txtBoxFormat(this, '(99)9999-9999', event);" onKeyUp="return Valida()" maxlength="13" size="20" /><br><br>

Celular
<input type="text" name="celular" onKeyDown="valida_digitos('celular')" onKeyPress="return txtBoxFormat(this, '(99)9999-9999', event);" onKeyUp="return Valida()" maxlength="13" size="20" /><br><br>

CNPJ
<input type="text" name="cnpj" onKeyPress="MascaraCNPJ(cadastrocliente.cnpj);" onBlur="ValidarCNPJ(cadastrocliente.documento);" onKeyUp="return Valida()" maxlength="18" size="50" /><br><br>

CPF
<input type="text" name="documento" onKeyPress="MascaraCPF(cadastrocliente.documento);" onBlur="ValidarCPF(cadastrocliente.cpf);" onKeyUp="return Valida()" maxlength="14" size="50" /><br><br>

Email
<input type="text" name="email" onKeyUp="return Valida()" onBlur="ValidaEmail();" maxlength="30" size="50" /><br><br>

</form>

Compartilhar este post


Link para o post
Compartilhar em outros sites

dei uma modificada.. falava os ID nos campos.. e outros como script que é soh para IE por isso nao funcinava no FF

 

<script language="javascript">
// JavaScript Document
//adiciona mascara de cnpj
function MascaraCNPJ(cnpj,evento){
	if(mascaraInteiro(evento) == false){
		return false;
	}	
	return formataCampo(cnpj, '00.000.000/0000-00', evento);
}

//adiciona mascara ao CPF
function MascaraCPF(cpf,evento){
	if(mascaraInteiro(evento)==false){
		return false;
	}	
	return formataCampo(cpf, '000.000.000-00', evento);
}


//valida o CPF digitado
function ValidarCPF(Objcpf){
	var cpf = Objcpf.value;
	exp = /\.|\-/g
	cpf = cpf.toString().replace( exp, "" );
	var digitoDigitado = eval(cpf.charAt(9)+cpf.charAt(10));
	var soma1=0, soma2=0;
	var vlr =11;
	
	for(i=0;i<9;i++){
		soma1+=eval(cpf.charAt(i)*(vlr-1));
		soma2+=eval(cpf.charAt(i)*vlr);
		vlr--;
	}	
	soma1 = (((soma1*10)%11)==10 ? 0:((soma1*10)%11));
	soma2=(((soma2+(2*soma1))*10)%11);
	
	var digitoGerado=(soma1*10)+soma2;
	if(digitoGerado!=digitoDigitado && cpf != ""){  
		alert('CPF Invalido!');		
		Objcpf.focus();
		}
}
function getTecla(evtKeyPress){
	if(document.all) { // Internet Explorer
   	   nTecla = evtKeyPress.keyCode;
	} else if(document.layers) { // Nestcape
		nTecla = evtKeyPress.which;
	} else {
		nTecla = evtKeyPress.which;
		if (nTecla == 8) {
		return true;
		}
	}
	return nTecla;
}

//valida numero inteiro com mascara
function mascaraInteiro(evento){
	var tecla = getTecla(evento);
	if (tecla < 48 || tecla > 57){
		//event.returnValue = false;
		return false;
	}
	return true;
}

//valida o CNPJ digitado
function ValidarCNPJ(ObjCnpj){
	var cnpj = ObjCnpj.value;
	var valida = new Array(6,5,4,3,2,9,8,7,6,5,4,3,2);
	var dig1= new Number;
	var dig2= new Number;
	
	exp = /\.|\-|\//g
	cnpj = cnpj.toString().replace( exp, "" );
	var digito = new Number(eval(cnpj.charAt(12)+cnpj.charAt(13)));
		
	for(i = 0; i<valida.length; i++){
		dig1 += (i>0? (cnpj.charAt(i-1)*valida[i]):0);	
		dig2 += cnpj.charAt(i)*valida[i];	
	}
	dig1 = (((dig1%11)<2)? 0:(11-(dig1%11)));
	dig2 = (((dig2%11)<2)? 0:(11-(dig2%11)));
	
	if(((dig1*10)+dig2) != digito && cnpj != ""){	
		alert('CNPJ Invalido!');
		ObjCnpj.focus();
		}
}

//formata de forma generica os campos
function formataCampo(campo, Mascara, evento) {
	var boleanoMascara;
	
	var Digitato = getTecla(evento);
	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;
	}
}




function ValidaEmail()
{
  var obj = eval("document.cadastrocliente.email");
  var txt = obj.value;
  if ((txt.length != 0) && ((txt.indexOf("@") < 1) || (txt.indexOf('.') < 7)))
  {
	alert('Este email parece ser um email inválido. Por favor digite outro!');
	obj.focus();
  }
}


function Valida(){

var nome = document.getElementById("nome").value;
var telefone = document.getElementById("telefone").value;
var celular = document.getElementById("celular").value;
var cnpj = document.getElementById("cnpj").value;
var cpf = document.getElementById("cpf").value;
var email = document.getElementById("email").value;

if(nome != "" && telefone != "" && celular != "" && documento != "" && endereco != "" && bairro != "" && cidade != "" && pergunta != "x" && resposta != "" && email != "" && senha != "" && confirmaSenha != ""){
document.cadastrocliente.envia.disabled = false;
return
}
}

//função que restringe caracteres digitados. Números ou letras
function valida_digitos(Ncampo)
{
		 //caracteres permitidos
		 if(Ncampo=="nome")
		 er=/[0-9]/;
		 if(Ncampo=="telefone" || Ncampo=="celular")
		 er=/[a-z]/;
		 digito=document.getElementById(Ncampo).value;
		 var tempor;
		
		  for (var i=0;i<digito.length; i++) {
			tempor = digito.substring(i,i+1);
			//se digitos não igual aos caracteres informado na variavel digitos, então é deletado
			  if (er.test(digito)) {
			  document.getElementById(Ncampo).value=digito.substring(0,digito.length-1);
			
			 return false;
			  break;
			}
		   }
}


function txtBoxFormat(objeto, 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;
} else {
	nTecla = evtKeyPress.which;
	if (nTecla == 8) {
		return true;
	}
}

	sValue = objeto.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( ")", "" );
	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) == "/") || (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++;
	}

	objeto.value = sCod;

	if (nTecla != 8) { // backspace
	  if (sMask.charAt(i-1) == "9") { // apenas números...
		return ((nTecla > 47) && (nTecla < 58)); }
	  else { // qualquer caracter...
		return true;
	  }
	}
	else {
	  return true;
	}
  }

</script>


<form action="cadastrando cliente.php" method="post" name="cadastrocliente">

Nome
<input type="text" name="nome" id="nome" onKeyPress="valida_digitos('nome')" onKeyUp="return Valida()" maxlength="50" size="50" /><br><br>

Telefone
<input type="text" name="telefone" id="telefone" onKeyDown="valida_digitos('telefone')" onKeyPress="return txtBoxFormat(this, '(99)9999-9999', event);" onKeyUp="return Valida()" maxlength="13" size="20" /><br><br>

Celular
<input type="text" name="celular" id="celular" onKeyDown="valida_digitos('celular')" onKeyPress="return txtBoxFormat(this, '(99)9999-9999', event);" onKeyUp="return Valida()" maxlength="13" size="20" /><br><br>

CNPJ
<input type="text" name="cnpj" id="cnpj"onKeyPress="return MascaraCNPJ(this,event);" onBlur="ValidarCNPJ(this);" onKeyUp="return Valida()" maxlength="18" size="50" /><br><br>

CPF
<input type="text" name="cpf" id="cpf" onKeyPress="return MascaraCPF(this,event);" onBlur="ValidarCPF(this);" onKeyUp="return Valida()" maxlength="14" size="50" /><br><br>

Email
<input type="text" name="email" id="email" onKeyUp="return Valida()" onBlur="ValidaEmail();" maxlength="30" size="50" /><br><br>

</form>

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara... funcionou!!!

mas quando digitar um cnpj, cpf ou email inválido quero que o cursor volte para este campo.

 

eu estava usando estes:

Objcpf.focus();

ObjCnpj.focus();

obj.focus();

 

no IE funcionou, no Firefox não!!

 

como q faz????

 

Esquece as postagens aí de cima.... dá uma olhada só nessa q tem os últimos resultados q obtive.

 

 

Ainda estou com alguns problemas:

 

quando digito um cpf ou cnpj inválido ele diz q é inválido mas muda de campo.

ou seja o ".focus()" não funciona.

 

e ainda nestes campos cfp e cnpj, depois q digito alguma coisa não consigo apagar.

não funciona nem delete nem backspace.

 

 

segue o script:

<script language="javascript">
// JavaScript Document
//adiciona mascara de cnpj
function MascaraCNPJ(cnpj,evento){
if(mascaraInteiro(evento) == false){
return false;
} 
return formataCampo(cnpj, '00.000.000/0000-00', evento);
}

//adiciona mascara ao CPF
function MascaraCPF(cpf,evento){
if(mascaraInteiro(evento)==false){
return false;
} 
return formataCampo(cpf, '000.000.000-00', evento);
}


//valida o CPF digitado
function ValidarCPF(Objcpf){
var cpf = Objcpf.value;
exp = /\.|\-/g
cpf = cpf.toString().replace( exp, "" );
var digitoDigitado = eval(cpf.charAt(9)+cpf.charAt(10));
var soma1=0, soma2=0;
var vlr =11;

for(i=0;i<9;i++){
soma1+=eval(cpf.charAt(i)*(vlr-1));
soma2+=eval(cpf.charAt(i)*vlr);
vlr--;
} 
soma1 = (((soma1*10)%11)==10 ? 0:((soma1*10)%11));
soma2=(((soma2+(2*soma1))*10)%11);

var digitoGerado=(soma1*10)+soma2;
if(digitoGerado!=digitoDigitado && cpf != ""){ 
alert('CPF Invalido!'); 
Objcpf.focus();
}
}
function getTecla(evtKeyPress){
if(document.all) { // Internet Explorer
nTecla = evtKeyPress.keyCode;
} else if(document.layers) { // Nestcape
nTecla = evtKeyPress.which;
} else {
nTecla = evtKeyPress.which;
if (nTecla == 8) {
return true;
}
}
return nTecla;
}

//valida numero inteiro com mascara
function mascaraInteiro(evento){
var tecla = getTecla(evento);
if (tecla < 48 || tecla > 57){
//event.returnValue = false;
return false;
}
return true;
}

//valida o CNPJ digitado
function ValidarCNPJ(ObjCnpj){
var cnpj = ObjCnpj.value;
var valida = new Array(6,5,4,3,2,9,8,7,6,5,4,3,2);
var dig1= new Number;
var dig2= new Number;

exp = /\.|\-|\//g
cnpj = cnpj.toString().replace( exp, "" );
var digito = new Number(eval(cnpj.charAt(12)+cnpj.charAt(13)));

for(i = 0; i<valida.length; i++){
dig1 += (i>0? (cnpj.charAt(i-1)*valida[i]):0); 
dig2 += cnpj.charAt(i)*valida[i]; 
}
dig1 = (((dig1%11)<2)? 0:(11-(dig1%11)));
dig2 = (((dig2%11)<2)? 0:(11-(dig2%11)));

if(((dig1*10)+dig2) != digito && cnpj != ""){ 
alert('CNPJ Invalido!');
ObjCnpj.focus();
}
}

//formata de forma generica os campos
function formataCampo(campo, Mascara, evento) {
var boleanoMascara;

var Digitato = getTecla(evento);
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;
}
}




function ValidaEmail()
{
var obj = eval("document.cadastrocliente.email");
var txt = obj.value;
if ((txt.length != 0) && ((txt.indexOf("@") < 1) || (txt.indexOf('.') < 7)))
{
alert('Este email parece ser um email inválido. Por favor digite outro!');
obj.focus();
}
}


function Valida(){

var nome = document.getElementById("nome").value;
var telefone = document.getElementById("telefone").value;
var celular = document.getElementById("celular").value;
var cnpj = document.getElementById("cnpj").value;
var cpf = document.getElementById("cpf").value;
var email = document.getElementById("email").value;

if(nome != "" && telefone != "" && celular != "" && documento != "" && endereco != "" && bairro != "" && cidade != "" && pergunta != "x" && resposta != "" && email != "" && senha != "" && confirmaSenha != ""){
document.cadastrocliente.envia.disabled = false;
return
}
}

//função que restringe caracteres digitados. Números ou letras
function valida_digitos(Ncampo)
{
//caracteres permitidos
if(Ncampo=="nome")
er=/[0-9]/;
if(Ncampo=="telefone" || Ncampo=="celular")
er=/[a-z]/;
digito=document.getElementById(Ncampo).value;
var tempor;

for (var i=0;i<digito.length; i++) {
tempor = digito.substring(i,i+1);
//se digitos não igual aos caracteres informado na variavel digitos, então é deletado
if (er.test(digito)) {
document.getElementById(Ncampo).value=digito.substring(0,digito.length-1);

return false;
break;
}
}
}


function txtBoxFormat(objeto, 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;
} else {
nTecla = evtKeyPress.which;
if (nTecla == 8) {
return true;
}
}

sValue = objeto.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( ")", "" );
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) == "/") || (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++;
}

objeto.value = sCod;

if (nTecla != 8) { // backspace
if (sMask.charAt(i-1) == "9") { // apenas números...
return ((nTecla > 47) && (nTecla < 58)); }
else { // qualquer caracter...
return true;
}
}
else {
return true;
}
}

</script>


<form action="cadastrando cliente.php" method="post" name="cadastrocliente">

Nome
<input type="text" name="nome" id="nome" onKeyPress="valida_digitos('nome')" onKeyUp="return Valida()" maxlength="50" size="50" /><br><br>

Telefone
<input type="text" name="telefone" id="telefone" onKeyDown="valida_digitos('telefone')" onKeyPress="return txtBoxFormat(this, '(99)9999-9999', event);" onKeyUp="return Valida()" maxlength="13" size="20" /><br><br>

Celular
<input type="text" name="celular" id="celular" onKeyDown="valida_digitos('celular')" onKeyPress="return txtBoxFormat(this, '(99)9999-9999', event);" onKeyUp="return Valida()" maxlength="13" size="20" /><br><br>

CNPJ
<input type="text" name="cnpj" id="cnpj"onKeyPress="return MascaraCNPJ(this,event);" onBlur="ValidarCNPJ(this);" onKeyUp="return Valida()" maxlength="18" size="50" /><br><br>

CPF
<input type="text" name="cpf" id="cpf" onKeyPress="return MascaraCPF(this,event);" onBlur="ValidarCPF(this);" onKeyUp="return Valida()" maxlength="14" size="50" /><br><br>

Email
<input type="text" name="email" id="email" onKeyUp="return Valida()" onBlur="ValidaEmail();" maxlength="30" size="50" /><br><br>

</form>

Editado por Otata 08/01/2009 21:00

Compartilhar este post


Link para o post
Compartilhar em outros sites

E aí pessoal... mais alguma ajuda??

 

coloquei esta dúvida em outro fórum e uma pessoa me falou pra usar Jquery, então estou pesquisando sobre jquery, já encontrei alguns tutos e tals mas por enquanto ainda estou agarrado!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Utilize DOm ( document.getElementById(.... )

 

Ex: document.getElementById("cpf").focus();

 

 

 

PS: Evite dar "ups" no tópico.. não desrespeite as regras

 

 

Abraços...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Utilize DOm ( document.getElementById(.... )

 

Ex: document.getElementById("cpf").focus();

 

 

 

PS: Evite dar "ups" no tópico.. não desrespeite as regras

 

 

Abraços...

 

document.getElementById("cpf").focus();

não deu certo!!

 

 

o q é "ups"??

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.