Jump to content


Jomello

Member Since 23/10/2008
Offline Last Active 07/04/2011, 10:25
-----

Posts I've Made

In Topic: Máscara De Campos

04/04/2011, 16:57

Olá amigos, posso estar fugindo do escopo, mas gostaria de mostrar que com aenas algumas modificações a gente pode ter uma melhor função para mascara.

Que fique registrado que essa é com certeza a melhor função de mascara JAVASCRIPT :-)

ESSA É UMA FORMA DE DIGITAR SOMENTE UM TIPO DE CARACTERE, PODE-SE MUDAR PARA RECEBER 1 OU MAIS CARACTERE - m = 'AB,etc'

function maskItUnico(w,e,m,r){
    // Cancela se o evento for Backspace
    if (!e) var e = window.event
    if (e.keyCode) code = e.keyCode;
    else if (e.which) code = e.which;
    // Variáveis da função
    var txt  = w.value;
    var mask = (!r) ? m : m.reverse();
    var ret  = "";
    if(code == 9 || code == 8 || txt.length == mask.replace(/[^#]+/g,'').length) return false;
    // Loop na máscara para aplicar os caracteres
    for(var x=0,y=0, z=mask.length;x<z && y<txt.length;){
        if(txt.charAt(x) != r){
            w.value = ret;
            return false;
        }
        else {
            ret += txt.charAt(y);
            y++;
            x++;
        }
    }
    // Retorno da função
    ret = (!r) ? ret : ret.reverse();
    w.value = ret;
}
// Novo método para o objeto 'String'
String.prototype.reverse = function(){
    return this.split('').reverse().join('');
};

IPB Skin By Virteq