我尝试使用Pure Javascript(如果可能,不使用jquery)。
我需要更新输入框'值如此:01
。我的用例是用于MM和DD输入框(主要用于美学)。使用输入滚轮时,它会随1
,2
而增加...我希望它增加如下:01
,02
...
答案 0 :(得分:1)
感谢@Daemedeor带领我这个:
这会将类型更改为text
并在模糊前加0
。在焦点上,它会将类型text
更改回number
类型并删除前导0
。您所要做的就是设置输入样式,使它们不会改变宽度。
(function() {
var monthInput = document.getElementById('month');
var dayInput = document.getElementById('day');
var prependZero = function() {
if (this.value === '') return;
event.target.setAttribute('type', 'text');
if (this.value.indexOf('0') === -1 && this.value.length !== 2) this.value = '0' + this.value;
};
var removeZero = function() {
this.value = this.value.split('0')[1];
this.setAttribute('type', 'number');
};
dayInput.addEventListener('blur', prependZero, false);
dayInput.addEventListener('focus', removeZero, false);
monthInput.addEventListener('blur', prependZero, false);
monthInput.addEventListener('focus', removeZero, false);
})();