From 2f1ddd450752b5ba2efadb3fdd7b9b13b67e851e Mon Sep 17 00:00:00 2001 From: Rick Waldron Date: Tue, 10 Apr 2012 21:54:07 -0400 Subject: [PATCH] Fix #11500. Allow triggered, simulated change events. --- src/event.js | 4 ++-- test/unit/event.js | 10 ++++++++++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/event.js b/src/event.js index 63bfb3c98..46036c5cf 100644 --- a/src/event.js +++ b/src/event.js @@ -825,8 +825,9 @@ if ( !jQuery.support.changeBubbles ) { jQuery.event.add( this, "click._change", function( event ) { if ( this._just_changed && !event.isTrigger ) { this._just_changed = false; - jQuery.event.simulate( "change", this, event, true ); } + // Allow triggered, simulated change events (#11500) + jQuery.event.simulate( "change", this, event, true ); }); } return false; @@ -1073,4 +1074,3 @@ jQuery.each( ("blur focus focusin focusout load resize scroll unload click dblcl }); })( jQuery ); - diff --git a/test/unit/event.js b/test/unit/event.js index 3c9a08109..090c4aa1f 100644 --- a/test/unit/event.js +++ b/test/unit/event.js @@ -2867,4 +2867,14 @@ test("fixHooks extensions", function() { })(); +test("trigger click on checkbox, fires change event", function() { + expect(1); + + var check = jQuery("#check2"); + check.on( "change", function() { + // get it? + check.off("change"); + ok( true, "Change event fired as a result of triggered click" ); + }).trigger("click"); +}); -- 2.39.5