Bueno yo hice una funcion, para validar los imput con caracteres a ver mira si te sirve.
Código:
function jva006(inp000,n){
// permite que inp000 que un input sea solo numeros
var var000 = document.getElementById(inp000).value;
var prb000 = /^[0-9]{1,3}?$/; //Permite solo numero para numero de articulos n = 0.
var prb001 = /^[0-9]{1,4}(\.[0-9]{0,2})?$/; //Formato de numero 4 digitos con 2 decimales. n = 1
var prb002 = /^[0-9]{1,2}(\.[0-9]{0,3})?$/; //Formato de numero 3 digitos con 3 decimales. n = 2
var prb003 = /^[0-4](\.[0-9]{0,3})?$/; //Formato de numero 1 digitos con 3 decimales para paquetes de aduanas. n=3
var prb004 = /^[12][90][0-9][0-9]\-[01][0-9]\-[0-3][0-9]$/; //Formato de fecha ####-##-## (aaaa-mm-dd) n = 4
var prb005 = /^[A-Za-záéíóúü]?///Solo acepta letras, acentos y ü
switch(n){
case 0:
if(prb000.test(var000)) m=0; else m=1;
break;
case 1:
if(prb001.test(var000)) m=0; else m=1;
break;
case 2:
if(prb002.test(var000)) m=0; else m=1;
break;
case 3:
if(prb003.test(var000)) m=0; else m=1;
break;
case 4:
if(prb004.test(var000)) m=0; else m=1;
break;
case 4:
if(prb005.test(var000)) m=0; else m=1;
break;
}
if (m==0) return true;
else {
alert("Concentrate, calmate ¡TE HAS EQUIVOCADO!");
document.getElementById(inp000).select();
document.getElementById(inp000).focus();
return false;
}
}
y al crear un input le pongo onchange="jva006(nombre,tipodevalidacion)"
aver que opinas... ?¿