我目前有这个,它将任何输入数字汇总到模糊处的最接近的整数值:
$(function(){
$('#my_value').blur(function() {
$(this).val(Math.ceil($(this).val()));
});
});
问题是我需要将它舍入到下一个最接近的1/10,所以如果有人输入1.23,它将会向上舍入到1.3。或者,如果某人输入3.78,则会将其舍入到3.8。
此外,我希望在#my_value字段中输入大于9的值时显示警告。
提前致谢。
答案 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