Isto pode ser útil para campos que só admite números ou letras.
Por exemplo, vamos fazer que em um campo de texto de um formulário só se permitam colocar números decimais do tipo 9999.99:
Precisamos de uma função em JavaScript (por exemplo):
function fieldNumber (objeto)
{
var valorCampo;
var evento_key = window.event.keyCode;
var numPosPonto = 0;
var strParteInteira = "";
var strParteDecimal = "";
var NUM_DECIMAIS = 2;
switch (evento_key)
{
case 48:
case 49:
case 50:
case 51:
case 52:
case 53:
case 54:
case 55:
case 56:
case 57:
case 46:
break;
default:
window.event.keyCode = 0;
return false;
}
valorCampo = objeto.value;
if (evento_key == 46)
if (valorCampo.indexOf(".") != -1)
{
window.event.keyCode = 0;
return false;
}
/* Só pode teclar o número de decimais indicado em NUM_DECIMAIS */
if ((numPosPonto = valorCampo.indexOf(".")) != -1)
{
strParteInteira = valorCampo.substr(0,(numPosPonto - 1));
strParteDecimal = valorCampo.substr((numPosPonto + 1), valorCampo.length)
if (strParteDecimal.length > (NUM_DECIMAIS - 1))
{
window.event.keyCode = 0;
return false;
}
}
return true;
}
Teremos uma página com o formulário e a caixa de texto. Teremos que chamar à função "fieldNumber" no evento onkeypress:
<input type="text" name="txtImporte" onkeypress="fieldNumber(this)">
Se tiverem algum problema, não hesitem em entrar em contato comigo enviando um e-mail a
iszori@hotmail.com
Através das categorias do nosso diretório podem ser encontrados outros tipos de recursos relacionados com este artigo:
+ Entrar em Os comentários dos visitantes são para ampliar a informação do artigo. Todos podem participar.