Hola amigo, estuve probando tu codigo. Solo encontre una falla lo cambie y funciono la validación, te explico:
Código:
function validarEntero(valor){
//intento convertir a entero.
//si era un entero no le afecta, si no lo era lo intenta convertir
valor = parseInt(valor)
//Compruebo si es un valor numérico
if (isNaN(valor)) {
//entonces (no es numero) devuelvo el valor cadena vacia
return ""
}else{
//En caso contrario (Si era un número) devuelvo el valor
return valor
}
Haz como en el texto marcado de rojo, utiliza las comillas dobles que normalmente se utilizan para cadenas en cualquier lenguaje de programación (" ") sin espacios, al momento de retornar el valor.
Yo lo hice asi y funciono, espero que sea la solución.
Saludos...