Giter VIP home page Giter VIP logo

Comments (34)

igorescobar avatar igorescobar commented on May 21, 2024 1
<input type="text" pattern="[a-z]+" />

http://www.w3schools.com/tags/att_input_pattern.asp

from jquery-mask-plugin.

guitutilo avatar guitutilo commented on May 21, 2024 1

Agora sim funcionou 100%
$(".sonumero").mask("#",
{
translation:
{
'#': {pattern: /[0-9 ]/, recursive: true}
}
});

from jquery-mask-plugin.

igorescobar avatar igorescobar commented on May 21, 2024

Ainda não é possível de ser fazer com os requisitos que você mencionou,
porém, você pode usar o atributo pattern do HTML5 e resolver seu problema.

Regards,
Igor Escobar
*Software Engineer
*

2013/9/4 Guilherme Tutilo [email protected]

Gostaria de saber como eu faço para inserir um campo onde só pode letras
mas o tamanho do campo é dinâmico tipo 500 caracteres. eu sei colocar
somente caracteres:
$(".cnpj").mask("SSSSS......");
Só que n posso limitar e também n vou contar 500 S entende. Como posso
arrumar isto???


Reply to this email directly or view it on GitHubhttps://github.com//issues/57
.

from jquery-mask-plugin.

guitutilo avatar guitutilo commented on May 21, 2024

a forma q eu faço dai é
/para chamar a máscaras coloque isto: onkeyup="mascara(this,nome_da_funcao);"
para a mascara funcionar
/
function mascara(obj, func)
{
v_obj = obj;
v_fun = func;
setTimeout("execMascara()", 1)
}

function execMascara()
{
v_obj.value = v_fun(v_obj.value);
}
//até aqui para a mascara funcionar

function soNumero(valor)
{
valor = valor.replace(/\D/g, ""); // remove tudo que não é dígito
return valor;
}

function soLetras(v)
{
v = v.replace(/,/g,"");
v = v.replace(/./g,"");
v = v.replace(/;/g,"");
v = v.replace(///g,"");
v = v.replace(/|/g,"");
v = v.replace(//g,"");
v = v.replace(/-/g,"");
v = v.replace(/+/g,"");
v = v.replace(//g,"");
v = v.replace(/"/g,"");
v = v.replace(/'/g,"");
v = v.replace(/!/g,"");
v = v.replace(/@/g,"");
v = v.replace(/#/g,"");
v = v.replace(/$/g,"");
v = v.replace(/%/g,"");
v = v.replace(/\¨/g,"");
v = v.replace(/&/g,"");
v = v.replace(/
/g,"");
v = v.replace(/]/g,"");
v = v.replace(/=/g,"");
v = v.replace(/[/g,"");
v = v.replace(/{/g,"");
v = v.replace(/}/g,"");
v = v.replace(/?/g,"");
v = v.replace(/:/g,"");

return v.replace(/\d/g,""); //Remove tudo o que não é Letra  

}

from jquery-mask-plugin.

guitutilo avatar guitutilo commented on May 21, 2024

hum, valeu pela dica

from jquery-mask-plugin.

guitutilo avatar guitutilo commented on May 21, 2024

Tentei arrumar a data para que aceite até dia 31 e mes até 12 mas n to conseguindo sair disso:
$(".data").mask("A0/B0/0000", {'translation': {
A: {pattern: /[0-3]/},
B: {pattern: /[0-1]/}
}
});

Tem alguma ideia de como poder me ajudar?

from jquery-mask-plugin.

igorescobar avatar igorescobar commented on May 21, 2024

Faça um exemplo funcional no fiddlejs e eu te ajudo.

from jquery-mask-plugin.

pyetrosafe avatar pyetrosafe commented on May 21, 2024

@guitutilo Mascara funcionando pra Data bloqueando dias maiores que 31 e meses maiores que 12:

Teste aqui: http://jsfiddle.net/uEgf2/1/

Code:

$(".data").mask("AB/CD/0000", { translation:
  {
    A: {pattern: /[0-3]/},
    B: {pattern: /[0-9]/},
    C: {pattern: /[0-1]/},
    D: {pattern: /[0-9]/},
  } , onKeyPress: function(a, b, c, d) {
    if(!a) return;
    var m=a.match(/(\d{2})/g)
    if(m==null) return;
    if(m[0] && m[0].charAt(0)=='3')
      d.translation.B = { pattern: /[0-1]/ };
    else
      d.translation.B = { pattern: /[0-9]/ };
    if(m[1] && m[1].charAt(0)=='1')
      d.translation.D = { pattern: /[0-2]/ };
    else
      d.translation.D = { pattern: /[0-9]/ };
    c.mask("AB/CD/0000", d)
  }
});

from jquery-mask-plugin.

igorescobar avatar igorescobar commented on May 21, 2024

Fiz uma pequena mudança no teu source:
http://jsfiddle.net/uEgf2/3/

Mudei a URL do jquery.mask.min.js do código. O raw file do github não funciona se você chamar direto na tag script em alguns navegadores.

from jquery-mask-plugin.

pyetrosafe avatar pyetrosafe commented on May 21, 2024

Ah sim ^^ !!!
Usei o raw file, para caso seja testado num momento que uma versão nova tenha sido lançada, se esta estiver com erro não afeta o código usado numa versão estável !!!
👅

Mas vlw não sabia desse defeito de não funcionar em alguns navegadores...

from jquery-mask-plugin.

guitutilo avatar guitutilo commented on May 21, 2024

Bha, valeu pyetrosafe deu certinho, e valeu por otimizar o código igor escobar :D

from jquery-mask-plugin.

igorescobar avatar igorescobar commented on May 21, 2024

@guitutilo no problem! ;-)

from jquery-mask-plugin.

igorescobar avatar igorescobar commented on May 21, 2024

@guitutilo na versão v1.2.0 está implementado mascaras com padroes recursivos.
Da uma olhada na documentação: http://igorescobar.github.io/jQuery-Mask-Plugin/ na sessão "recursive digits". É exatamente o que você procura.

from jquery-mask-plugin.

guitutilo avatar guitutilo commented on May 21, 2024

Opa vou ver mesmo e vou baixar a atualização, tu é o cara :D
Estava fazendo o teste com a data (sim só consegui ver isso agora) e tento colocar ex: 29/12/2013 quando tento colocar o 29 o 2 vai mais o 9 não vai, pq isso?? Isso no exemplo que tu modificou, mas no do pyetrosafe funciona

Outra coisa como faço para adicionar alem dos números recursivos o espaço caso o cara aperte na barra de espaço??

Mais uma coisa eu coloquei um length no meu form de maxlength 10 e classe de numeros recursivos, só que ele me perde o maxlength é eu que estou fazendo algo errado ou é o plugin??

from jquery-mask-plugin.

igorescobar avatar igorescobar commented on May 21, 2024

Vamos por partes:
1- com relação a voce nao conseguir digitar a data corretamente, tinha um bug no código, fiz a correção e está disponível aqui:
http://jsfiddle.net/uEgf2/4/

2 - Da uma lida na documentação, lá fala de tudo isso.
3 - Quando você ativa a mascara recursiva ele remove o maxlength do campo. Mas eu já pensei em uma forma de resolver quando o maxlength é setado por vocês e não pelo plugin.

from jquery-mask-plugin.

guitutilo avatar guitutilo commented on May 21, 2024
  1. ok to usando a sua data agora.
  2. Vou ver a documentação para adicionar espaço
  3. Blz vou esperar tu ver isso do maxlength

from jquery-mask-plugin.

pyetrosafe avatar pyetrosafe commented on May 21, 2024

A data ficou com erro no que o igor postou ali, porque na verdade a primeira versão da função que eu fiz, a mascara não voltava ao original se o campo dia não começasse com 1 ou 2 e o mês com 0...
Eu já tinha arrumado essa função na versão 2: http://jsfiddle.net/uEgf2/1/ mas o igor arrumou o "arquivo externo" da primeira versão do fiddle... hehehe

from jquery-mask-plugin.

guitutilo avatar guitutilo commented on May 21, 2024

Sim valeu pyetrosafe :

Eu tentei colocar o espaço nos caracteres recursivos mas ele não funciona de maneira correta:
$(".sonumero").mask("A#",
{
translation:
{
A: {pattern: /[0-9 ]/}

        }
    });

As vezes funciona o espaço e as vezes não.

from jquery-mask-plugin.

igorescobar avatar igorescobar commented on May 21, 2024

Você tem que personalizar o # e não o A. O A não é recursivo e sim o #.

Regards,
Igor Escobar
*Software Engineer
*

On Fri, Sep 13, 2013 at 7:50 AM, Guilherme Tutilo
[email protected]:

Sim valeu pyetrosafe :

Eu tentei colocar o espaço nos caracteres recursivos mas ele não funciona
de maneira correta:
$(".sonumero").mask("A#",
{
translation:
{
A: {pattern: /[0-9 ]/}

    }
});

As vezes funciona o espaço e as vezes não.


Reply to this email directly or view it on GitHubhttps://github.com//issues/57#issuecomment-24386808
.

from jquery-mask-plugin.

guitutilo avatar guitutilo commented on May 21, 2024

A bom, vou ver isso

from jquery-mask-plugin.

guitutilo avatar guitutilo commented on May 21, 2024

fiz desta forma funcionou só não 100%
$(".sonumero").mask("0#",
{
translation:
{
'#': {pattern: /[0-9 ]/, recursive: true}
}
});

Quando coloco um valor e dar espaço funciona mas se coloco dois valores e um espaço não funciona

from jquery-mask-plugin.

igorescobar avatar igorescobar commented on May 21, 2024

Ah garoto! ;-)

from jquery-mask-plugin.

guitutilo avatar guitutilo commented on May 21, 2024

Só não funciona o maxlength que defini, o q fazer?

from jquery-mask-plugin.

igorescobar avatar igorescobar commented on May 21, 2024

Estou tentando re-pensar esta funcionalidade do maxlength, agora que entrou o recursive:true na jogada as coisas mudam. Preciso pensar em uma solução que fique ok para todos os casos.

from jquery-mask-plugin.

guitutilo avatar guitutilo commented on May 21, 2024

ok

from jquery-mask-plugin.

igorescobar avatar igorescobar commented on May 21, 2024

@guitutilo baixa a nova versão e tenta

$(".sonumero").mask("#", {
    maxlength: false,
    translation: {
        '#': {pattern: /[0-9 ]/, recursive: true}
    }
});

from jquery-mask-plugin.

guitutilo avatar guitutilo commented on May 21, 2024

Deu certo sim, bha valeu cara

from jquery-mask-plugin.

igorescobar avatar igorescobar commented on May 21, 2024

Sem problemas.

from jquery-mask-plugin.

edujr2013 avatar edujr2013 commented on May 21, 2024

Oi, bom dia. Estou precisando de uma ajuda, inseri ás máscaras porém precisava delimitar a hora. Deixar padrão como posso fazer? Porém não entendo quase nada de javascript/jquery. Consegui inseri a data seguindo os códigos nesta página. Grato desde já.

from jquery-mask-plugin.

igorescobar avatar igorescobar commented on May 21, 2024

@edujr2013 Como assim? você quer deixar um valor default no campo?

from jquery-mask-plugin.

edujr2013 avatar edujr2013 commented on May 21, 2024

Preciso digitar a hora até 23:59. Não podendo inserir 24/25... : 60/61...
Como foi implementado no exemplo da data.

from jquery-mask-plugin.

igorescobar avatar igorescobar commented on May 21, 2024

Tem um exemplo de como você pode fazer isso:
https://gist.github.com/igorescobar/6450250

Porém, este exemplo é aplicado a data, é só você extrair o conceito e usar para hora.

from jquery-mask-plugin.

edujr2013 avatar edujr2013 commented on May 21, 2024

Valeu. Obrigado pela atenção.

from jquery-mask-plugin.

igorescobar avatar igorescobar commented on May 21, 2024

👍

from jquery-mask-plugin.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.