Spinner: Return formatted value when using value method.

This commit is contained in:
Scott González 2011-08-09 21:38:19 -04:00
parent a0eb042bcd
commit 7c7d3df8e7

View File

@ -17,8 +17,7 @@ function modifier( fn ) {
return function() {
var previous = this.options.value;
fn.apply( this, arguments );
this._format();
this._aria();
this._refresh();
if ( previous !== this.options.value ) {
this._trigger( "change" );
}
@ -48,7 +47,7 @@ $.widget( "ui.spinner", {
this._value( this.options.value );
this._draw();
this._mousewheel();
this._aria();
this._refresh();
},
_getCreateOptions: function() {
@ -307,14 +306,6 @@ $.widget( "ui.spinner", {
this._value( this._trimValue( this.options.value ) );
}),
_aria: function() {
this.element.attr({
"aria-valuemin": this.options.min,
"aria-valuemax": this.options.max,
"aria-valuenow": this.options.value
});
},
_parse: function( val ) {
if ( typeof val === "string" ) {
val = $.global && this.options.numberFormat ? $.global.parseFloat( val ) : +val;
@ -324,14 +315,23 @@ $.widget( "ui.spinner", {
_format: function() {
var num = this.options.value;
this.element.val( $.global && this.options.numberFormat ? $.global.format( num, this.options.numberFormat ) : num );
return $.global && this.options.numberFormat ? $.global.format( num, this.options.numberFormat ) : num;
},
_refresh: function() {
this.element
.val( this._format() )
.attr({
"aria-valuemin": this.options.min,
"aria-valuemax": this.options.max,
"aria-valuenow": this.options.value
});
},
// update the value without triggering change
_value: function( value ) {
this.options.value = this._trimValue( this._parse(value) );
this._format();
this._aria();
this._refresh();
},
destroy: function() {
@ -371,7 +371,7 @@ $.widget( "ui.spinner", {
value: function( newVal ) {
if ( !arguments.length ) {
return this._parse( this.element.val() );
return this._format();
}
this.option( "value", newVal );
},