¿Alguien puede decirme cuál es la diferencia entre changeinput eventos y ?
Estoy usando jQuery para agregarlos:
$('input[type="text"]').on('change', function() {
alert($(this).val());
})
También funciona con input lugar de change.
¿Quizás alguna diferencia en el orden del evento en relación con el enfoque?
javascript
jquery
events
dom
Gabriel Petrovay
fuente
fuente

inputevento también captura el pegado. Ver stackoverflow.com/questions/15727324/…Respuestas:
Según esta publicación :
oninputEl evento ocurre cuando el contenido de texto de un elemento se cambia a través de la interfaz de usuario.onchangeocurre cuando la selección, el estado verificado o el contenido de un elemento han cambiado . En algunos casos, solo ocurre cuando el elemento pierde el foco o al presionar return(Enter) y se ha cambiado el valor. El atributo onchange se puede utilizar con:<input>,<select>, y<textarea>.TL; DR:
oninput: cualquier cambio realizado en el contenido del textoonchange:<input />: cambiar + perder el enfoque<select>opción: cambiarfuente
onchangeocurre "cuando el elemento pierde el foco" mientras queoninputocurre en cada cambio de texto.onchangetambién se activa cuando presiona Enter mientras aún enfoca.Se
changeeventactiva en la mayoría de los navegadores cuando se cambia el contenido y se pierde el elementofocus. Básicamente es un agregado de cambios. No disparará para cada cambio como en el casoinputevent.Se
inputeventdispara sincrónicamente al cambiar el contenido del elemento. Como tal, el oyente de eventos tiende a disparar con más frecuencia.Los diferentes navegadores no siempre están de acuerdo sobre si se debe activar un evento de cambio para ciertos tipos de interacción
fuente
inputevento.La documentación de MDN tiene una explicación clara (no estoy seguro de cuándo se agregó):
https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/change_event
fuente