From 4fa6ccdc0d8625f58e43e446f24bc4e65f87cb1d Mon Sep 17 00:00:00 2001 From: Kin Blas Date: Thu, 22 Sep 2011 16:23:43 -0700 Subject: [PATCH] Fix for issue 2315 - Flip toggle switch with change event bound, triggers multiple times - Modified refresh() so that it checks to see if the value actually changed before firing off the "change" event. --- js/jquery.mobile.forms.slider.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/js/jquery.mobile.forms.slider.js b/js/jquery.mobile.forms.slider.js index 9195fca1..16e93dcd 100644 --- a/js/jquery.mobile.forms.slider.js +++ b/js/jquery.mobile.forms.slider.js @@ -284,13 +284,17 @@ $.widget( "mobile.slider", $.mobile.widget, { } if ( !preventInputUpdate ) { + var valueChanged = false; + // update control"s value if ( cType === "input" ) { + valueChanged = control.val() !== newval; control.val( newval ); } else { + valueChanged = control[ 0 ].selectedIndex !== newval; control[ 0 ].selectedIndex = newval; } - if ( !isfromControl ) { + if ( !isfromControl && valueChanged ) { control.trigger( "change" ); } }