2017-09-13 35 views
0

我有jQuery爲用戶輸入字段時做一些計算。不能去固定()工作

當我設置它的時候,我仍然得到可以有4位小數的結果。

jQuery函數

$(function() { 
    var labor = $('#labor'); 
    var cost = $('#cost'); 
    var RPH = $('#rph'); 

    labor.keyup(function() { 
     parseFloat(RPH.val(labor.val()/cost.val())).toFixed(2); 
    }); 

    cost.keyup(function() { 
     parseFloat(RPH.val(labor.val()/cost.val())).toFixed(2); 
    }); 
}); 

任何幫助,這將不勝感激。

+0

值得注意的是:JavaScript正在做計算,而不是jQuery。 – Utkanos

+0

看起來你正確地使用'parseFloat'和'toFixed',但是一旦這些函數運行,你就不會對結果做任何事情。你的意思是用結果代替'勞動力'或'成本'的價值嗎? – Sidney

+0

toFixed工作正常,你只是沒有做任何與它返回的值。 – Paulpro

回答

2

您需要實際將該值設置爲toFixed的結果,並且在對這些值進行計算之前需要使用parseFloat

RPH.val((parseFloat(labor.val())/parseFloat(cost.val())).toFixed(2)); 
+0

工作正常。謝謝大家的意見。我現在看到如何正確使用這個功能。 – Slait

+0

這個例子可能沒關係,因爲你在DOM中使用了結果,但值得注意的是,如果你想最終結果是一個數字,那麼你需要另一個.parseFloat()。.toFixed()返回一個字符串。 – Ben

+1

@本真,但你會失去任何尾隨零。所以我認爲他在得到一個字符串後。 – baao