我试图使用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位数?
答案 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