javascript - ejemplo - onchange jquery input text
¿El evento onchange se propaga? (4)
Estoy usando la delegación de eventos para escuchar los eventos más bajos en el DOM, pero no está funcionando para un evento onchange en un cuadro de selección. ¿El evento onchange se propaga o sube el DOM?
Google ha fallado en encontrar una respuesta concluyente.
En jQuery 1.4+, el evento de cambio burbujea en todos los navegadores, incluido IE.
$(''div.field_container'').change(function() {
// code here runs in all browers, including IE.
});
No estoy seguro si recibo la pregunta, pero si te refieres a esto, entonces NO.
<div id="foo">
<select onchange="alert(''hi'');">
<option>Hello</option>
<option>World</option>
</select>
</foo>
Donde div div = "foo" tendría un evento onchange ... ¿burbujeando desde la lista de selección?
en una nota relacionada, solo un FYI no puede adjuntar un evento a las opciones dentro de la lista de selección en IE (bueno, puede pero no se activará)
No he tratado con esto durante bastante tiempo, pero la última vez que lo hice, recuerdo que Firefox reconoció el evento en el elemento <SELECT>
, mientras que IE6 reconoció solo los eventos en las etiquetas <OPTION>
. Hasta donde recuerdo.
IE7 no estaba fuera en ese momento.
Entonces, si este es el caso, tiene más sentido no escribir el controlador de eventos en línea y aplicarlo en DOM listo en su lugar, para que no tenga un código contaminado y repetitivo.
De acuerdo con la especificación , change
, submit
, reset
debe burbujear y focus
y blur
no debe burbujear.
Este comportamiento se implementa correctamente en todos los navegadores web, excepto IE <9, es decir, change
, submit
, reset
hacer burbujas correctamente en IE> = 9.
Consulte https://.com/a/4722246/227299 para obtener una solución alternativa de jQuery en las versiones anteriores de IE