No necesitás probar que charCode sea mayor de 31 si luego probás que esté entre 57 y 48.
Código Javascript
:
Ver originalfunction isNumberKey(evt) {
var charCode = (evt.which) ? evt.which : event.keyCode
return (charCode >= 48 && charCode <= 57) || (charCode == 45)
}
De todas formas ten en cuenta que "-4-5506-7" sería una entrada válida, pero no es un número. Es mejor no inventar y validar el número usando lo que ya está en el lenguaje:
Código Javascript
:
Ver originalfunction esEntero(num) {
return ! isNaN(parseInt(num, 10));
}
Saludos.