输出jquery函数,带两位小数

时间:2016-02-27 20:14:04

标签: javascript jquery

嗨:我有以下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

3 个答案:

答案 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));