2017-09-13 19 views
0

私はユーザーがフィールドに入力したときにjQueryを使用して計算します。toFixed()を働かせることができません

私はそれを設定しても、結果は小数点以下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の結果を使用しているので、この例では問題にはならないかもしれませんが、最終結果を.toFixed()が返すようにするには別の.parseFloat()が必要であることに注意してください文字列。 – Ben

+1

@Ben trueですが、末尾のゼロが失われます。だから私は彼がここで文字列を取得した後だと思う。 – baao

関連する問題