Ir para conteúdo
Fórum Script Brasil
  • 0

Mascara


Luizzzzzzzzzzzzzzzz

Pergunta

Boa tarde pessoal...tenho uma duvida referente a mascara...

tenho uma mascara que consegui aqui mesmo no forum...onde eu digito e a mascara deixa o valor no padrão 999.999,00

Porém o cliente pediu para que o usuario tenha a opção de digitar o ponto em qualquer momento da digitação.... isso seria possivel em uma mascara??

Passo abaixo a mascara que estou utilizando:

function maskIt(w,e,m,r,a){

// 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 = (!r) ? w.value.replace(/[^\d]+/gi,'') : w.value.replace(/[^\d]+/gi,'').reverse();
var mask = (!r) ? m : m.reverse();
var pre = (a ) ? a.pre : "";
var pos = (a ) ? a.pos : "";
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(mask.charAt(x)!='#'){
ret += mask.charAt(x); x++;
} else{
ret += txt.charAt(y); y++; x++;
}
}

// Retorno da função
ret = (!r) ? ret : ret.reverse() 
w.value = pre+ret;
}

// Novo método para o objeto 'String'
String.prototype.reverse = function(){
return this.split('').reverse().join('');
}

Obrigado!

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

DESCULPE PESSOAL...POSTEI NO tópico ERRADO....SORRY :blink:

Boa tarde pessoal...tenho uma duvida referente a mascara...

tenho uma mascara que consegui aqui mesmo no forum...onde eu digito e a mascara deixa o valor no padrão 999.999,00

Porém o cliente pediu para que o usuario tenha a opção de digitar o ponto em qualquer momento da digitação.... isso seria possivel em uma mascara??

Penso eu que não seria possivel porque a mascara já possui uma formatação para o valor...e eu adicionado o ponto pode dar problemas...

Passo abaixo a mascara que estou utilizando:

function maskIt(w,e,m,r,a){

// 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 = (!r) ? w.value.replace(/[^\d]+/gi,'') : w.value.replace(/[^\d]+/gi,'').reverse();
var mask = (!r) ? m : m.reverse();
var pre = (a ) ? a.pre : "";
var pos = (a ) ? a.pos : "";
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(mask.charAt(x)!='#'){
ret += mask.charAt(x); x++;
} else{
ret += txt.charAt(y); y++; x++;
}
}

// Retorno da função
ret = (!r) ? ret : ret.reverse() 
w.value = pre+ret;
}

// Novo método para o objeto 'String'
String.prototype.reverse = function(){
return this.split('').reverse().join('');
}

Obrigado!

Editado por Luizzzzzzzzzzzzzzzz
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...