Spinner: Fixed double firing of change event when setting the value option directly.

This commit is contained in:
Scott González 2011-08-07 12:38:01 -04:00
parent 6c9dac29a5
commit 6c84531d7c
2 changed files with 8 additions and 10 deletions

View File

@ -6,6 +6,7 @@
<link type="text/css" href="../../themes/base/jquery.ui.all.css" rel="stylesheet" />
<script type="text/javascript" src="../../jquery-1.6.2.js"></script>
<script type="text/javascript" src="../../external/jquery.mousewheel-3.0.4.js"></script>
<script type="text/javascript" src="../../external/jquery.global.js"></script>
<script type="text/javascript" src="../../ui/jquery.ui.core.js"></script>
<script type="text/javascript" src="../../ui/jquery.ui.widget.js"></script>
<script type="text/javascript" src="../../ui/jquery.ui.button.js"></script>
@ -13,7 +14,11 @@
<link type="text/css" href="../demos.css" rel="stylesheet" />
<script type="text/javascript">
$(function() {
$("#spinner").spinner();
$("#spinner").spinner({
change: function() {
console.log( "change" );
}
});
$("#disable").toggle(function() {
$("#spinner").spinner("disable");

View File

@ -287,7 +287,7 @@ $.widget( "ui.spinner", {
_setOption: function( key, value ) {
if ( key === "value" ) {
return this._setOptionValue( value );
return this._value( value );
}
this._super( "_setOption", key, value );
@ -303,14 +303,6 @@ $.widget( "ui.spinner", {
}
},
_setOptionValue: function( value ) {
var previous = this.options.value;
this._value( value );
if ( previous !== this.options.value ) {
this._trigger( "change" );
}
},
_setOptions: modifier(function( options ) {
this._super( "_setOptions", options );
@ -342,6 +334,7 @@ $.widget( "ui.spinner", {
_value: function( value ) {
this.options.value = this._trimValue( this._parse(value) );
this._format();
this._aria();
},
destroy: function() {