Me gustaría ejecutar una función sobre cada modificación de un control de cuadro de texto tan pronto como el usuario esté escribiendo. el evento .keyup()
está bien para la mayoría de los casos.jQuery evento al seleccionar un elemento sugerido en un cuadro de texto?
Sin embargo, los navegadores (como Chrome o Firefox) pueden sugerir entradas de autocompletado para controles de cuadro de texto (probablemente porque se conoce @name o @id del control de entrada).
Desafortunadamente, no puedo despedir a ninguno de los siguientes eventos al "hacer clic en una entrada sugerida". (.keyup() se activa cuando ha seleccionado con el teclado)
$('input#email')
.click(function() { console.log('click'); })
.keyup(function() { console.log('keyup'); })
.keydown(function() { console.log('keydown'); })
.change(function() { console.log('change'); })
.focus(function() { console.log('focus'); })
.blur(function() { console.log('blur'); });
Como medida de lo posible, me gustaría evitar el uso de una comprobación periódica setInterval()
.
¿Hay alguna manera de detectar este evento "seleccionar una sugerencia"?
¡Genial! Gracias por esto (incluso si estoy un poco lejos de este proyecto ahora). Noto que se dispara al hacer clic en una entrada sugerida (según lo solicitado) pero no al seleccionarla por teclado. El registro del controlador de eventos también con _keyup_ puede ser útil para completar este espacio. – Myobis