¿Cómo implemento onchange de <input type="text" con jQuery?

<select> tiene esta API. ¿Qué pasa con <input>?

Solución

Puede utilizar .change()

$('input[name=myInput]').change(function() { ... });

Sin embargo, este evento sólo se dispara cuando el selector ha perdido el foco, por lo que tendrá que hacer clic en otro lugar para que esto funcione.

Si esto no es del todo correcto para usted, podría utilizar algunos de los otros eventos jQuery como keyup, keydown o keypress - dependiendo del efecto exacto que desee.

Comentarios (7)

Yo sugeriría usar el evento keyup algo como lo siguiente:

$('elementName').keyup(function() {
 alert("Key up detected");
});

Hay algunas maneras de lograr el mismo resultado, así que supongo que es hasta la preferencia y depende de cómo usted quiere que funcione exactamente.

Actualización: Esto sólo funciona para la entrada manual no copiar y pegar.

Para copiar y pegar yo recomendaría lo siguiente:

$('elementName').on('input',function(e){
 // Code here
});
Comentarios (3)
$("input").change(function () {
    alert("Changed!");
});
Comentarios (2)