]> source.dussan.org Git - jquery-ui.git/commitdiff
Spinner: Return formatted value when using value method.
authorScott González <scott.gonzalez@gmail.com>
Wed, 10 Aug 2011 01:38:19 +0000 (21:38 -0400)
committerScott González <scott.gonzalez@gmail.com>
Wed, 10 Aug 2011 01:38:19 +0000 (21:38 -0400)
ui/jquery.ui.spinner.js

index fecaa9b05e270f429ec854980eb638fea58ece98..4bbc1adf490b1888ba332571d102f7abaa678f1e 100644 (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 );
        },