嗨:我有以下jquery函数但是无法得到结果以得到2个小数点。例如,如果我在BadgeQuantity文本框中的值为1,则输出结果为50.我希望它以50.00的形式出现。这是我的功能。如您所见,我尝试过使用.toFixed(2)。也尝试使用parseFloat并且两者都不起作用。
$('input[name="BadgeQuantity"]').keyup(function(){
var a = 50;
var b = $(this).val();
($('input[name="BadgeTotal"]').val(a * b)).toFixed(2);
});
提前感谢您的帮助 cdr6800
答案 0 :(得分:1)
你几乎拥有它 - 你需要在数字上调用toFixed()
而不是DOM元素。所以改变:
($('input[name="BadgeTotal"]').val(a * b)).toFixed(2);
要:
$('input[name="BadgeTotal"]').val((a * b).toFixed(2));
答案 1 :(得分:0)
尝试通过算术运算调用.toFixed()
而不是通过Jquery对象
$('input[name="BadgeQuantity"]').keyup(function(){
var a = 50;
var b = $(this).val();
$('input[name="BadgeTotal"]').val((a * b).toFixed(2));
});
.toFixed()
是Number
原型中可用的函数。如果我们在Jquery包装器对象中访问它,那么将导致错误undefined is not a function
答案 2 :(得分:0)
首先:您应该在分配到b
var b = parseFloat($(this).val());
接下来,您应该在结果乘法
上使用toFixed
$('input[name="BadgeTotal"]').val((a * b).toFixed(2));