我有兩個問題:我想讓微調器正確顯示數字
問題1:我有一個微調功能,我有一個小問題。例如,如果用戶在微調器中鍵入00000009或00021,如果用戶點擊離開微調器,它仍將在微調器中顯示00000009或00021。我想要的是,如果發生這樣的事情,那麼我想要的是,當用戶點擊時,我想讓微調顯示爲9或21而不是00000009或00021。我不知道如何做到這一點。有誰知道如何解決這個問題:
問題2:如果我使用退格鍵從微調框中刪除一個數字,並且留下一個空白微調框,需要做些什麼以便如果我點擊微調框,微調器中的最後一個數字重新出現在微調器中?
我的主要功能微調:
function Spinner(elem,min, max){
this.elem = elem;
this.elem.value = min;
this.min = min;
this.max = max;
this.timer;
this.speed = 150; //milliseconds between scroll values
var selfO = this;
this.elem.onkeyup = function(){
var regex = /^[0-9]*$/;
if(!regex.test(selfO.elem.value)){
selfO.elem.value = selfO.elem.value.substring(0,selfO.elem.value.length-1);
return;
}
selfO.validateValue();
}
this.validateValue = function(){
if(Number(selfO.elem.value) > selfO.max) {selfO.elem.value = selfO.max;}
if(Number(selfO.elem.value) < selfO.min) {selfO.elem.value = selfO.min;}
}
this.stopSpinning = function(){
clearTimeout(selfO.timer);
}
this.spinValue = function(dir){
selfO.elem.value = Number(selfO.elem.value) + dir;
selfO.validateValue();
selfO.timer = setTimeout(function(){selfO.spinValue(dir);},selfO.speed);
}
};
window.onload=function(){
//create the Spinner objects
var SpinnerHours = new Spinner(document.getElementById('txtHours'),0,23);
}
我認爲我包含底部函數以幫助您更好地理解它 – BruceyBandit