Comments (14)
Usar a mascara "A{4,16}" não resolve?
from jquery-mask-plugin.
Infelizmente não funciona caro amigo...
Quando coloco "A{4,16}" Ele apenas me deixa escrever "a1" ou "11" (letra e número ou número e número)!!!
Se trata do erro que comentei em um dos exemplos iniciais:
.mask('9{4}S{0,4}');
Não casa com: "1234abcd" como deveria, mas casa com: "12abcde". Não reconheceu "{4}" como expressão regular, mas sim "{" e "}" caractere mascara (?) e "4" como um único numero.
from jquery-mask-plugin.
Vamos por lá... você está tentando fazer muitas coisas que o plugin ainda não suporta. Ele suporta expressões simples de regex e não toda a stack de possibilidades de uma expressão regular.
{4} - Não é suportado.
{0,4} - Não é suportado.
Você tentou se explicar mais acho que é mais fácil você dizer o que você quer como resultado final do que explicar tudo o que você tentou fazer rs.
Você quer que os 4 primeiros digitos sejam numeros e os 12 seguintes sejam letras minusculas, é isso?
from jquery-mask-plugin.
Hehehehe eu coloquei tanta coisa que verifiquei no plugin que devo dificultado ver minha dificuldade inicial...
Vamos lá ^^
O que eu queria, era realmente ter um campo Alfanumérico de 4 a 20 caracteres.
De primeira eu havia tentado como você propôs "A{4,20}". Blz, isso não funcionou, provavelmente o plugin deve estar esperando apenas 2 números dentro das chaves, ao colocar 3 ele se perde. Também se perde se o primeiro valor for 0 ("{0,n}").
Quer dizer, eu apenas tentei de uma forma, de outra forma, e outra forma, e acabei detectando essas falhas em entender o quantificador regex. Assim como eu tinha comentado:
Ainda nesse ponto do regex, quando o uso do quantificador "{,}" temos o seguinte:
"{n}": não entende como regex mas também não imprime as "chaves" ("{" e "}") como caractere mascara;
"{0,n}": usa da soma de 1 caractere "0" com o valor de "n". Ex: "{0,4}" aceita 5 caracteres;
"{1,n}": aqui, diferente do exemplo anterior funciona corretamente, aceita 1 ou n caracateres;
"{n,}": não entende a regra, ao menos "n" ou mais. Aqui imprime o caractere 2x (independente do valor de n) e não imprime mais nada depois disso;
Porém no terceiro item dessa marcação "{1,n}", esqueci de acrescentar que: se "n" for maior que 9, ou seja, conter 2 algarismos, ele também se perde.
from jquery-mask-plugin.
Ah! Mas A{4,20} deveria funcionar perfeitamente, deve ser um bug, vou investigar isso hoje e já corrijo. Sorry!
from jquery-mask-plugin.
@pyetrosafe vi que era simples de resolver, atualiza para versão v0.11.5 e veja se resolve seu problema. A mascara A{4,20} deve funcionar agora.
from jquery-mask-plugin.
Hehehehehe Firmeza xD
Eu estava usando de primeira a versão 10.3 eu acho, eu já atualizei aqui pra 11.4 e continuou igual... Esqueci de mencionar isso... 😄
from jquery-mask-plugin.
Ah ok... vou atualizar ;D
De qualquer forma, da uma olhada nos outros pontos desse tópico ^^
Me responde depois... ;D
Updated
Testado, funcionando perfeitamente:
"A{4,20}"
"S{2,4}9{2,4}"
Menos estes:
"A{0,4}"
"A{4}"
from jquery-mask-plugin.
Não tenho previsão de fazer funcionar estes outros 2 pontos @pyetrosafe. Se os usuários começarem a pedir eu volto a revisar este assunto.
from jquery-mask-plugin.
Ok... ;)
E estes casos ?
Exibir os caracteres "{}" automaticamente, tem uma maneira específica que não conheço?
Mesmo usando a opção maskChars, nenhuma tentativa ('{': '{', '{': '{', '{': '{', '{': '{') faz o plugin entender "{" como caractere mascará (imprimir o caractere) invés de regex. Para isso foi necessário usar o translation ('b': '{', 'i': '}'), mas dessa forma os caracteres "{" e "}" devem ser digitados e não é colocado automáticamente.
E esses últimos:
Ah outra coisa interessante, seria por a opção de ter o placeholder com true ou false nas opções, com default: false.
Ah, também senti falta da função onBlur, nas options do plugin, tendo que criar um script por fora. Aqui eu usaria pra verificar o valor quando onComplete não fosse chamado.
from jquery-mask-plugin.
@pyetrosafe eu foco na entrega de features, casos de uso, eu não posso sair programando para o plugin sair atendendo todas as possibilidades por mais malucas que elas sejam. Meu objetivo não é fazer com que o usuário possa colocar qualquer coisa que o plugin vai se virar e entender. Aonde tiver utilidade eu vou agir. Se você me disser que existe uma mascara em que estes pontos seriam úteis e que com o que tem o plugin hoje não é possível fazer eu ataco o problema, sacou?
Caso contrário fica difícil ;)
from jquery-mask-plugin.
Se você quiser usar o caracter { e } como caracteres de mascara, você precisa escapa-lo corretamente pois { é um caracter reservado de regex então você precisa fazer desta forma {'{': '{'}. Da mesma forma que foi feito com o parenteses: '(': '(',
from jquery-mask-plugin.
A opção de placeholder já foi sugerida por outro usuário, porém, o html 5 já oferece o atributo placeholder="" que da conta do recado, certo? A sacada do onBlur já está sendo pensada também.
from jquery-mask-plugin.
Saquei velho...
Bom o caso do placeholder é porque ainda temos usuários com navegadores sem suporte a HTML 5!!! Faria isso então para atingir esses usuários.
Vlw, vou tentar escapar o "{"...
O caso do regex quantificador {4} seria apenas para simplificar {4,4}...
Bom isso...
Parabéns amigo... mt bom o plugin e a sua atenção em visualizar o comentário da galera!!!
Até mais, sucesso!!!
from jquery-mask-plugin.
Related Issues (20)
- Multiple mask in data-mask using array
- .mask() method doesn't work on inputs with type "number" HOT 2
- jQuery 'input' event receiving unexpected value
- Replace lowercase with Uppercase HOT 1
- Mask allowing partially filled input to be submitted
- Special Characters in the pattern? HOT 1
- jQuery Mask Input
- Masking hour and prevent incorrect hours HOT 4
- 'Uncaught TypeError: $(...).mask is not a function' error on .NET Core MVC app. HOT 4
- Donations dont work on your page
- Ns
- mask('0.0.0') transform to 0.00??
- How to remove Masking on Form Submit HOT 1
- Additional server-side (PHP) checking libraries HOT 1
- Data mask reverse on Phone with DDD
- Can i do this kind of mask ?
- AVAST is understanding that it is a virus! HOT 7
- How to apply mask to string value not element
- Automatically enter the required numbers/letters?
- Mascara de valor não funciona.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from jquery-mask-plugin.