2017-03-15 86 views
1

我想在两个数字之间得到一定的结果。我做了这个:Jquery/Javascript函数在两个数字之间得到结果

var number = $("#number").val(); 

if(number>=1 && number<=5){ 
    alert('2 points!'); 
} else if(number>=6 && number<=10){ 
    alert('3 points!'); 
} else if(number>=11 && number<=15){ 
    alert('4 points!'); 
} else if(number>=16 && number<=20){ 
    alert('5 points!'); 
} 
...and continues... 

我想要一种方法来做到这一点更短,我想一些帮助。

+0

这? '警报(Math.ceil(number/5 + 1)+'points!')' –

+0

@le_m Woops nvm,意外使用的地板 – Bug

回答

1

如果每个范围都是平等的,那么你就需要这样的:

var number = $("#number").val(); 
var range = 5; 
var points = Math.ceil(number/range) + 1; 
alert(points + ' points!'); 
+0

这非常有用!谢谢 ! – NekoLopez

1

function getPoints(n) { 
 
    if (!n || n < 1) return ''; 
 
    return Math.floor((n - 1)/5) + 2 + " points!"; 
 
} 
 
document.getElementById('a').addEventListener('keyup', function() { 
 
    document.getElementById('b').innerText = getPoints(parseInt(this.value)); 
 
});
<input id="a" type="number" /> 
 
<span id="b"></span>