Jump to content


leandro-ljs

Member Since 05/06/2003
Offline Last Active 13/03/2015, 11:37
-----

Topics I've Started

[Resolvido] Mascara Para EndereçO Mac

11/08/2010, 17:00

Olá Pessoal, Após uma eternidade por problemas particulares estou voltando a trabalhar na web novamente e já me deparei com um problema e queria pedir uma ajuda a todos.
Seguinte, estou precisando montar uma mascara java para um campo a ser preenchido com um endereço mac.

Tenho isso:

<script>
function mascara(o,f){ 
v_obj=o 
v_fun=f 
setTimeout("execmascara()",1) 
} 

function execmascara(){ 
v_obj.value=v_fun(v_obj.value) 
} 

function leech(v){ 
v=v.replace(/o/gi,"0") 
v=v.replace(/i/gi,"1") 
v=v.replace(/z/gi,"2") 
v=v.replace(/e/gi,"3") 
v=v.replace(/a/gi,"4") 
v=v.replace(/s/gi,"5") 
v=v.replace(/t/gi,"7") 
return v 
} 

function MAC(v){ 
v=v.toUpperCase() //Maiúsculas 
v=v.replace(/[^ABCDEFG0123456789]/g,"") //Remove tudo o que não for A, B, C, D, E, F, G ou Numeros
v=v.replace(/(\d{1})(\d{12})$/,"$1:$2") // coloca : antes dos ultimos 12 digitos 
v=v.replace(/(\d{1})(\d{10})$/,"$1:$2") // coloca : antes dos ultimos 10 digitos 
v=v.replace(/(\d{1})(\d{8})$/,"$1:$2") // coloca : antes dos ultimos 8 digitos 
v=v.replace(/(\d{1})(\d{6})$/,"$1:$2") // coloca : antes dos ultimos 6 digitos 
v=v.replace(/(\d{1})(\d{4})$/,"$1:$2") // coloca : antes dos ultimos 4 digitos 
v=v.replace(/(\(A|B|C{1})(\d{2})$/,"$1:$2") // coloca : antes dos ultimos 2 digitos 
return v; 
}
</script>

no form estou usando assim onkeypress="mascara(this,MAC)"

ele sai formatado correto, porem nao formata quando digito os caracteres ABCDEFG, só formata se digito numeros

Alguém sabe o que estou mancando ??

Obrigado a todos

IPB Skin By Virteq