Javascript Ceil增量

时间:2013-05-27 08:19:44

标签: javascript blur ceil

我目前有这个,它将任何输入数字汇总到模糊处的最接近的整数值:

$(function(){
    $('#my_value').blur(function() {
    $(this).val(Math.ceil($(this).val()));
    });
});

问题是我需要将它舍入到下一个最接近的1/10,所以如果有人输入1.23,它将会向上舍入到1.3。或者,如果某人输入3.78,则会将其舍入到3.8。

此外,我希望在#my_value字段中输入大于9的值时显示警告。

提前致谢。

2 个答案:

答案 0 :(得分:1)

@LinusKleen有你想要的东西:

var num = + $(this).val(); 
if (num > 9) {
  alert('message');
} else {
  $(this).val(Math.ceil(num * 10) / 10);
}

答案 1 :(得分:1)

尝试这样的事情

function nearest(value, min, max, steps){
    var zerone = Math.round((value-min)*steps/(max-min))/steps; // bring to 0-1 range
    return zerone*(max-min) + min;
}


console.log(nearest(2.75, 0, 10, 10)); // 3
console.log(nearest(5.12, 5, 6, 10)); // 5.1
console.log(nearest(0.06, 0, 1, 10)); // 0.1


$('#my_value').blur(function() {

if($(this).val() >9 )
{
alert("message");

}
else
nearest($(this).val(),0,9,10);

});

或尝试以下

如果val = 28.45表示

Math.round($(this).val()*10)/10  //returns 28.5