Trabaja con el evento
onkeypress, para que cada vez que se pulse una tecla teniendo el input el enfoque, se verifique la cantidad de caracteres que contiene como valor. Si dicha cantidad es igual a 3 o al límite que establezcas, con el método
preventDefault, se evita el comportamiento normal del evento que consiste en imprimir el valor de la tecla pulsada en el input, mientras que si la cantidad de caracteres ingresados es menor en 1 al límite, solamente se muestra el mensaje de alerta, que veo que es lo que quieres hacer.
Código Javascript
:
Ver originalvar caja = document.getElementById("caja"),
limite = 3;
caja.onkeypress = function(e){
var cantidadActual = this.value.length;
if (cantidadActual == limite - 1)
alert("Ya alcanzó el límite de caracteres");
if (cantidadActual >= limite)
e.preventDefault();
};
Saludos