jquery ui spinner几分钟

时间:2013-01-15 19:42:55

标签: jquery-ui spinner

我试图使用jquery ui微调器输入一分钟。目前它工作0 - 60但我希望单个数字是00,01..09两位数。

根据the docs,我应该使用globalize插件并设置numberFormat:'mm',但这会引发错误。在控制台中,我查看了globalize js,'mm'选项位于'formatDate'中。所以我试过了:

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

但是没有做任何事情。任何人都知道如何使一个微调器总是显示2位数?

2 个答案:

答案 0 :(得分:8)

不幸的是,.spinner()没有formatDate选项。

试试这个:

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

DEMO:http://jsfiddle.net/dirtyd77/SA7Gk/

希望这有帮助,如果您有任何问题,请告诉我们!


参考文献:


<强>更新

以下是对globalize.js的引用。

答案 1 :(得分: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