Ir para conteúdo

POWERED BY:

Arquivado

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

Akwen

Mascára Telefone

Recommended Posts

Pessoal, vejam o código abaixo:

 

function MaskTelefone(Field){	var tecla = event.keyCode;	tammax = 8	vr = Field.value;		vr = vr.replace( "/", "" );	vr = vr.replace( "/", "" );	vr = vr.replace( ",", "" );	vr = vr.replace( ".", "" );	vr = vr.replace( ".", "" );	vr = vr.replace( ".", "" );	vr = vr.replace( ".", "" );	vr = vr.replace( "-", "" );	vr = vr.replace( "-", "" );	vr = vr.replace( "-", "" );	vr = vr.replace( "-", "" );	vr = vr.replace( "-", "" );	tam = vr.length;		if ( tecla == 8 || tecla >= 48 && tecla <= 57 || tecla >= 96 && tecla <= 105 ){  if ( tam <= 4 ){     Field.value = vr; } 	 if ( (tam > 2) ){    Field.value = vr.substr( 0, tam - 4 ) + '-' + vr.substr( tam - 4, tam ); }	}  }

Bom, eu tenho um campo "TELEFONE". Através desse código, caso eu digite 32345678 automaticamente aparece 3234-5678. Se digito 2345678, aparece 234-5678.

 

Porém, se eu digito 6132345678 (Ou seja, o numero com o DDD), aparece 613234-5678. Eu queria q aparecesse (61) 3234-5678 (Com o DDD entre parenteses, e um espaço entre o parenteses e o número). E se eu digitasse 612345678, aparecesse (61) 234-5678...

 

Bom.... já tentei colocar o script acima, q to usando, pra fazer isso.. mas não dei conta..... Algúem aí pode me ajudar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tá danado Alves.... tô desde cedo aqui na empresa tentando mexer nisso e nada....Eu consigo fazer ou um formato (61) 234-5678 ou outro (61) 3234-5678 . Agora, os dois ao mesmo tempo, não tá rolando. Nã entendo nadaaaaaaaaa de javascript, a lógica... se fosse ASP pelo menos....Se puder me ajudar.... já olhei seu tópico, e tô tentando por ele, mas queria ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Primeiro deixa eu agradecer sua paciência, rs =P cê vai pro céu.Bom.... Existem telefones no formato (61) 234-5678 e (61) 3234-5678.Eu preciso que a mascara, sirva para estes dois formatos.... Pq eu vou ter um campo só, não sei qual dos dois formatos o cara vai digita...Logo..... no mesmo campo, se ele digitar 612345678 irá aparecer (61) 234-5678 e se digitar 6132345678 irá aparecer (61) 3234-5678. Isso no mesmo campo, lembrando... sacou?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Saquei.... mas pensa, vai q alguém q mora lá onde o Judas perdeu as botas.... e onde o telefone ainda é 7 digitos acessa a página? =P heheheheVo fuça aqui, qualquer coisa posto, caso alguém venha a ter alguma dúvida igual =P

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal, consegui fazer a mascara..... Com a funcionalidade que eu falei, não sei se já existia ou não... mas o fato é q essa funciona.....

 

Abraços! Agradeço ao Alves, q através de outro tópico, e desse aqui tb, me deu uma luz sobre por onde fuçar.

 

function MaskTelefone(Field){	var tecla = event.keyCode;	tammax = 10	vr = Field.value;		vr = vr.replace( "/", "" );	vr = vr.replace( "/", "" );	vr = vr.replace( ",", "" );	vr = vr.replace( ".", "" );	vr = vr.replace( ".", "" );	vr = vr.replace( ".", "" );	vr = vr.replace( ".", "" );	vr = vr.replace( "-", "" );	vr = vr.replace( "-", "" );	vr = vr.replace( "-", "" );	vr = vr.replace( "-", "" );	vr = vr.replace( "-", "" );	tam = vr.length;		if ( tecla == 10 || tecla >= 48 && tecla <= 57 || tecla >= 96 && tecla <= 105 ){      if ( (tam >= 2) && (tam <= 3) ){    Field.value = vr.substr( 0, tam - 4 ) + '(' + vr.substr( tam - 4, tam ) + ') '; } 	   if ( (tam > 8) ){    Field.value = vr.substr( 0, tam - 4 ) + '-' + vr.substr( tam - 4, tam ); }                 	 	}  }

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como aplico essa função?

 

para um cnpj eu uso algo bem simples

 

<input name="cnpj" type="text" id="cnpj" size="29" maxlength="18"

class="corpo2" style="overflow:auto; border: 1px solid #00A5B4;" onKeyPress="formata(this, '##.###.###/####-##');" >

Compartilhar este post


Link para o post
Compartilhar em outros sites

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Untitled Document</title>

</head>

 

<body>

<script>

function mascara_telefone() {

if(document.form.telefone.value.length == 1) {

document.form.telefone.value ='('+document.form.telefone.value.substr(0);

}

 

if(document.form.telefone.value.length == 3) {

document.form.telefone.value += ')';

}

if(document.form.telefone.value.length == 4) {

document.form.telefone.value += ' ';

}

 

if(document.form.telefone.value.length == 9) {

document.form.telefone.value += '-';

}

}

</script>

<form name=form>

Telefone: <input type=text name=telefone onKeyUp="mascara_telefone()" maxlength=14><br>

</form>

 

</body>

</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Essa também é muito boa!

<html><head>
<title>Máscaras em campos de texto</title>

<script type="text/javascript">
//Script by: klonder;

function mascara(l,m,i){
//l: local do objeto --> this;
//m: máscara;
//i: caractere inicial (posição zero da máscara;

var iCount = l.value.length;

//Digite os símbolos especiais que permanecerão em seus locais corretos:
var simbolosEspeciais = "()/-.";	
	
	if (iCount < m.length) {
		 //Verificando se foi passado o parâmetro inicial "i":
		if (iCount == 1 && i != ""){
			l.value = i+l.value;	
		} else {
		
			if (simbolosEspeciais.indexOf(m.substr(iCount,1)) != -1) {
				l.value = l.value+m.substr(iCount,1);
			
				if (m.substr(iCount+1,1) == " ") {
				l.value = l.value+" ";
				}
			}
		
			if (m.substr(iCount,1) == " ") {
				l.value = l.value+" ";
			}
		}

	} else {
		l.value = l.value.substr(0,m.length);
	}
} 
</script>

</head>
<body>
<form name="form1" action="" method="post">
Data: <input type="text" name="data" value="" onKeyUp='mascara(this,"##/##/####","")'>
<br>CPF: <input type="text" name="cpf" value="" onKeyUp='mascara(this,"###.###.###-##","")'>
<br>CNPJ: <input type="text" name="cnpj" value="" onKeyUp='mascara(this,"##.###.###/####-##","")'>
<br>Telefone: <input type="text" name="telefone" value="" onKeyUp='mascara(this,"(##) ####-####","(")'>
<br>CEP: <input type="text" name="cep" value="" onKeyUp='mascara(this,"#####-###","")'>
<br>Texto qualquer: <input type="text" name="texto1" value="" onKeyUp='mascara(this,"### ### ###","")'>

<br>
<input type="submit" value=" Enviar ">
</form>
</body>
</html>

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.