我目前有这个四舍五入任何输入的数字到最接近的整数值在blur:
$(function(){
$('#my_value').blur(function() {
$(this).val(Math.ceil($(this).val()));
});
});
问题是我需要它四舍五入到下一个最接近的1/10,所以如果有人输入1.23,它将四舍五入到1.3。或者如果有人输入3.78,它将四舍五入到3.8。
另外,我希望它在#my_value字段中输入超过9的值时显示警报。
@LinusKleen有你想要的:
var num = + $(this).val();
if (num > 9) {
alert('message');
} else {
$(this).val(Math.ceil(num * 10) / 10);
}
试试这样
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);
});
if val= 28.45表示
Math.round($(this).val()*10)/10 //returns 28.5