Update "Fix #6593. Don't trigger change event twice when simulating it on IE."

This reverts commit 3d0de29d5615c1b1d74c72e6272484961a4ba243.
This commit is contained in:
Dave Methvin 2011-09-08 23:31:47 -04:00 committed by timmywil
parent 8c91da57b9
commit 4030de9519

View File

@ -799,8 +799,8 @@ if ( !jQuery.support.changeBubbles ) {
jQuery._data( elem, "_change_data", val ); jQuery._data( elem, "_change_data", val );
} }
if ( val !== old && old != null && elem.parentNode ) { if ( val !== old && old != null ) {
simulate( "change", elem.parentNode, e, true ); simulate( "change", elem, e, true );
} }
}, },
@ -852,21 +852,20 @@ if ( !jQuery.support.changeBubbles ) {
jQuery.event.special.change = { jQuery.event.special.change = {
setup: function( data, namespaces ) { setup: function( data, namespaces ) {
if ( this.type === "file" ) { // If this is a real input element, no need to fake change
if ( rformElems.test( this.nodeName ) ) {
return false; return false;
} }
for ( var type in changeFilters ) { for ( var type in changeFilters ) {
jQuery.event.add( this, type + "._change", changeFilters[ type ] ); jQuery.event.add( this, type + "._change", changeFilters[ type ] );
} }
return rformElems.test( this.nodeName );
}, },
teardown: function( namespaces ) { teardown: function( namespaces ) {
if ( rformElems.test( this.nodeName ) ) {
return false;
}
jQuery.event.remove( this, "._change" ); jQuery.event.remove( this, "._change" );
return rformElems.test( this.nodeName );
} }
}; };
} }