添加两个浮点数并将总数分配给输入字段

时间:2010-09-30 12:19:20

标签: javascript jquery

正如标题所述,我试图使用javascript / jquery添加两个浮点数,然后将值分配给另一个输入字段,但有时当我添加两个我得到的东西,如1234.567800000000,任何关于如何修复的想法此?

编辑:我想要这样的东西,1234.56

这是我的代码,

jQuery的:

$("[data-custom*='min_sys'], [data-custom*='min_inst'], [data-custom*='max_sys'], [data-custom*='max_inst']").live('keyup',function(){
 //the parent
 var parent = $(this).closest('[class*="costing"]');

 var one = Number(parent.find('[data-custom*="max_sys"]').val());
 var two = Number(parent.find('[data-custom*="max_inst"]').val());
 var sum = one+two;

        //here I set the value of the 'total_inst input' box to the variable 'sum'
 var total = parseFloat(parent.find('[data-custom*="total_inst"]').val(sum));

});

此外,在数据库中存储类似于(总数)的浮点数的最佳方法是什么,哪种数据类型最好?

提前Thanx!

3 个答案:

答案 0 :(得分:4)

由于您将结果放入输入字段,因此可以使用toFixed()方法。它需要一个参数,即您希望看到的小数位数,并输出一个字符串。例如:

var n = 345.2020110000

n.toFixed(3) // 345.202
n.toFixed(5) // 345.20201

答案 1 :(得分:1)

您可以使用Math.round()围绕它。

答案 2 :(得分:1)

由于您要添加浮点数,因此可能有一长串小数位。

您可能需要截断/舍入结果。

请参阅javascript Math对象

中的Math.round,Math.floor等