Identificar somente a quantidade de caracteres alfanuméricos digitados
Eu estou usando essa função de javascript pra ir para o próximo campo assim que terminar de digitar campos com limite máximo (por exemplo: data, telefone, cep...):
function proximoCampo(atual,proximo){
if(atual.value.length >= atual.maxLength){ document.getElementById(proximo).focus(); }
}
Peguei essa função em um fórum, buscando no Google. Até aí tudo bem, mas também estou usando máscaras (com um plugin do jquery) e quando a pessoa clica no campo data por exemplo exibe:
__/__/____
E então a pessoa digita o texto e daí já fica formatado conforme vai digitando: 20/04/2010
O problema é que logo quando a pessoa clica no campo data e exibe o formato:
__/__/____
A função do javascript já interpreta que já foram digitados os 10 caracteres e nem deixa a pessoa digitar o valor e já vai para o próximo campo.
Será que há algum jeito de resolver isso? Identificando por exemplo se não é _ (que é o caracter que eu uso como máscara e que é substituído pelo texto)? Ou identificando se há texto ou número digitado, preenchendo todos os campos? Daí ao invés de atingir o limite de 10 caracteres no campo data, atingir o limite de 8 dígitos numéricos, só pegando os números, mas sem perder a máscara.
Enfim, aceito sugestões, pois já faz tempo que estou pesquisando isso, tentando e não consegui sair do lugar ainda. :(
Obrigado.
Será que não é possível fazer isso? rssrs
Pelo visto não é tão complicado, é questão de achar a solução correta. Infelizmente já busquei e fiz diversos testes, mas ainda não consegui.
Se alguém puder me ajudar, pode ser também utilizando alguma biblioteca javascript como jQuery se for o caso.
Mas estou precisando muito disso.
Obrigado.
Discussão (1)
Carregando comentários...