Ir para conteúdo

POWERED BY:

Arquivado

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

Jow Xavier

[Resolvido] validar telefone

Recommended Posts

Preciso validar um campo telefone, validar apenas o primeiro digito, o campo não pode começar com 7, 8 e 9

 

exemplo ... 74847585 ... inválido

 

24867258 ... válido

 

tenho script onde estou validando, os campos apenas numéricos e saber se estão preenchidos, só preciso validar o primeiro registro conforme acima ...

 

<script>
function validaForm(){
d = document.cadastro;


//validar telefone
if (d.telefone.value == ""){
alert ("O campo " + d.telefone.name + " deve ser preenchido!");
d.telefone.focus();
return false;
}
//validar telefone(verificacao se contem apenas numeros)
if (isNaN(d.telefone.value)){
alert ("O campo " + d.telefone.name + " deve conter apenas numeros!");
d.telefone.focus();
return false;
}
 }
</script>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Galera consegui resolver ....

 

<script>
 
function ValidarPosicao(telefone_instalacao_1)
{
	var a = telefone_instalacao_1;
	c1 = a.value.substring(0, 1);
	
	var charpos = c1.search("[^0-6]"); 
	if(c1.length > 0 &&  charpos >= 0) 
	{ 
		alert('Telefone não pode começar com 7, 8 ou 9');
		telefone_instalacao_1.value="";
		telefone_instalacao_1.setfocus();
		return false; 
	}
} 
</script>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mano, eu fiz um script meio nas pressas e não tive tempo para testá-lo com afinco. Fiz alguns testes e ocorreu tudo bem, conforme você deseja.

 

Cole o código a seguir no seu editor preferido:

<html>
<head><title>Validando campo: Telefone</title></head>
<body>
<script language="JavaScript">
var numValidos = "0123456789";
var num1invalido = "789";
var i;
function validarTelefone(){
	//Verificando quantos dígitos existem no campo, para controlarmos o looping;
	digitos = document.form1.telefone.value.length;
	
	for(i=0; i<digitos; i++) {
		if (numValidos.indexOf(document.form1.telefone.value.charAt(i),0) == -1) {
			alert("Apenas números são permitidos no campo Telefone!");
			document.form1.telefone.select();
			return false;
		}
		if(i==0){
			if (num1invalido.indexOf(document.form1.telefone.value.charAt(i),0) != -1) {
			alert("Número de telefone inválido!");
			document.form1.telefone.select();
			return false;
			}
		}
	} 
	
}
</script>
<form name="form1" action="" method="post" onSubmit="return validarTelefone();">
<input type="text" name="telefone"> <input type="submit" value="Verificar">
</form>
</body>
</html>

Se ocorrer algum erro, por favor, não se acanhe em comentar.

 

Abraços!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mano, eu fiz um script meio nas pressas e não tive tempo para testá-lo com afinco. Fiz alguns testes e ocorreu tudo bem, conforme você deseja.

 

Cole o código a seguir no seu editor preferido:

 

Acabei de testar funcionou perfeito ...

 

Agora tenho duas soluções hehehe abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nussa! kkk! Que massa! Depois desse seu código eu me animei em estudar "expressões regulares". O problema é que quando você aprende de uma maneira, tende a ficar meio enferrujado para outros métodos. Mas com certeza, vendo o tamaho do seu código, dessa vez eu me animei!

 

--Post editado--

 

Apenas para não abrir outro post, segue um código aí para os visitantes do fórum. Nesse código estou utilizando ER (acabei de estudar, hehe!) e já faz tudo o que o amigo Jow Xavier queria. E olha só a simplicidade do código! (Tudo bem, para quem ainda não saca ER não irá entender mesmo, né?! Como eu há 4 horas atrás!).

 

Nesse caso ER caiu como uma luva! Basta copiar e colar o código a seguir em algum editor HTML e testar.

<html>
<head><title>Validando campo: Telefone</title>
<script language="JavaScript" type="text/javascript">
function validarCampo(){
	var reDigits = /^[0-6][0-9]{6}[0-9]\b/;
	if (!reDigits.test(document.getElementById("texto1").value)){
		alert("O número: "+document.getElementById("texto1").value+" é inválido!");
		document.getElementById("texto1").select();
		return false;
	}else{return true;}
}
</script>
</head>
<body>

Número válido: 8 números que não iniciam com 7, 8 ou 9.
<form name="form1" action="" method="post" onSubmit="return validarCampo();">
<input type="text" name="texto1" id="texto1"> <input type="submit" value="Verificar">
</form>

</body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Klonder, você aprende rápido heim? Parabéns, continue no estudo irá ver como seu trabalho em validação de formulário irá se simplificar a medida em que você aprende ERs.

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.