2016-07-26 7 views
0

を使用して、ドロップダウン選択したオプションに基づいて金額を計算すると、デモリンクはsubtA,servicetax,sbc,kkc,wht,subtotalDを次のように私はこれらの入力のIDを使って隠された入力から値を取得していますhttps://jsfiddle.net/harshithanaidu1991/sk07p4fj/2/ここではJavaScript

です。 basis and divisionと表示される2つのドロップダウンがあり、value of basisOthersに等しい場合にのみ、divisionが表示されます。

  1. 基礎iの値が隠れ入力から取得してい量がDIV5にDIV1の間で等しく共有を意味5で割った、「等しい」に等しい場合。

  2. basisの値がbetween 1 to 3に等しい場合、div1からdiv3の間で量が共有されます。

  3. basisの値がspecificに等しい場合、次いでdivisionドロップダウンが分割ドロップダウン量のselctiongに基づいて、来るは、その特定の区分に応じて共有されます。

  4. basisの値が量が第1の行はsubtAとパーセンテージを計算し、iは残りの入力にその割合を適用していますによって相応共有されるDIV5するDIV1からの入力に入力されるものは何でも、othersに等しい場合。すぐに私はどのように入力に入力された金額の合計(の最初の行だけのように検証するには、これを回避する方法parseFloatを使用していた場合でもothersbasis dropdownから、NaN値が入力に来ている選択として

テーブル)はsubtAを超えてはいけません。

また、条件がすべての場合、多すぎるコードを書くことなく、簡単なやり方で他の方法があれば教えてください。

答えて

0

算術演算の後ではなく、変数に値を取り込むときにparseFloatを実行します。

var basis = parseFloat($('#basis').val()); 
var subtA = parseFloat($('#subtA').val()); 
var othertax = parseFloat($('#othertax').val()); 
var subtB = parseFloat($('#subtB').val()); 
var servicetax = parseFloat($('#servicetax').val()); 
var sbc = parseFloat($('#sbc').val()); 
var kkc = parseFloat($('#kkc').val()); 
var subtC = parseFloat($('#subtC').val()); 
var subtD = parseFloat($('#subtD').val()); 
var wht = parseFloat($('#wht').val()); 
var rate = parseFloat($('#rate').val()); 
var division = parseFloat($('#division').val()); 
+0

さらに、その与えられたNaN値を加えました。@ Haresh Vidja – 06011991