3

分の入力にjquery uiスピナーを使用しようとしています。現在は 0 ~ 60 で動作しますが、1 桁を 00,01..09 の 2 桁にしたいと考えています。

ドキュメントによると、グローバル化プラグインを使用して numberFormat: 'mm' を設定する必要がありますが、エラーが発生しました。コンソールで globalize js を調べましたが、「mm」オプションは「formatDate」内にあります。だから私は試しました:

$('.minute-spinner').spinner({culture: "en-US",formatDate: "mm"});

しかし、それは何もしませんでした。スピナーに常に2桁を表示させる方法を知っている人はいますか?

4

2 に答える 2

8

残念ながら、オプション .spinner()はありません。formatDate

これを試して:

$('.minute-spinner').spinner({ numberFormat: "d2" });

デモ:http://jsfiddle.net/dirtyd77/SA7Gk/

これがお役に立てば幸いです。ご不明な点がありましたらお知らせください。


参考資料:


アップデート:

これがへの参照globalize.jsです。

于 2013-01-15T20:37:09.643 に答える
5

JQueryスピナーにnumberFormatを使用したいだけなら、Globalizeライブラリ全体はやり過ぎです。

Globalize を省略し、次のコードを js のどこかに追加するだけです ...

// mock Globalize numberFormat for mins and secs using jQuery spinner ...
if (!window.Globalize) window.Globalize = {
        format: function(number, format) {
                number = String(this.parseFloat(number, 10) * 1);
                format = (m = String(format).match(/^[nd](\d+)$/)) ? m[1] : 2;
                for (i = 0; i < format - number.length; i++)
                        number = '0'+number;
                return number;
        },
        parseFloat: function(number, radix) {
                return parseFloat(number, radix || 10);
        }
};

次に、Dom の回答に従って、スピナー cfg に次のいずれかを追加します ...

numberFormat: 'd2' // 0 pad to length of 2
numberFormat: 'n2' // same
numberFormat: 'd5' // 0 pad to length of 5
numberFormat: 'n5' // same 
于 2015-02-05T14:49:14.177 に答える