使用jQuery将输入字段四舍五入到小数点后2位
我用下面的代码制作了一个厘米的转换器使用jQuery将输入字段四舍五入到小数点后2位,jquery,input,rounding,Jquery,Input,Rounding,我用下面的代码制作了一个厘米的转换器 $(function () { var $src = $('#inches'), $dst = $('#cms'); $src.on('input', function () { $dst.val($src.val() * 2.54); }); }); 在英寸框中,按键时,#cms的值会发生变化,但它可能会留下很多小数,有没有办法阻止它显示超过2位小数或四舍五入到2位小数?使用toFixed方法始终显
$(function () {
var $src = $('#inches'),
$dst = $('#cms');
$src.on('input', function () {
$dst.val($src.val() * 2.54);
});
});
在英寸框中,按键时,
#cms
的值会发生变化,但它可能会留下很多小数,有没有办法阻止它显示超过2位小数或四舍五入到2位小数?使用toFixed
方法始终显示2位小数。请注意,它将对结果进行四舍五入。为了安全起见,我在这里使用了parseFloat
,但它本身并不是必需的,因为相乘的数字是2.54,这已经是一个浮点数了。但在使用整数的情况下,需要parseFloat
始终显示尾随小数
$(function () {
var $src = $('#inches'),
$dst = $('#cms');
$src.on('input', function () {
$dst.val(parseFloat($src.val() * 2.54).toFixed(2));
});
});
将此函数添加到脚本中:
function to2dp(foo) {
var bar = (Math.round(foo * 100) / 100).toFixed(2);
return bar;
}
…然后添加onKeyUp事件以使用新值调用它,例如:
$('#inches').keyup(function(e) {
var foo=$(this).val();
if(!IsNaN(foo)) {
$('#cms').val(to2dp(parseFloat(foo) * 2.54));
}
}
免责声明-我还没有尝试过这一点-就在我的脑海中:$谢谢,我尝试了.toFixed,但实现了错误,我会在它允许的时候接受答案