2016-07-26 120 views
0

此处的下拉列表中选择选项的量是通过使用这些输入的ID的如下subtA,servicetax,sbc,kkc,wht,subtotalD演示链接https://jsfiddle.net/harshithanaidu1991/sk07p4fj/2/计算基于使用JavaScript

我从隐藏的投入得到的值。 我有两个下拉菜单,名为basis and division,而division只有在value of basis等于Others时才会出现。

  1. 如果基础的值等于“等于”,这我从隐藏的输入得到的量已经通过5这意味着DIV1至DIV5之间均分分割。

  2. 如果basis的值等于between 1 to 3,金额将在div1到div3之间共享。

  3. 如果basis值等于specific然后division下拉将到来,基于划分的下拉量的selctiong将相应地共享给该特定分割。

  4. 如果basis值等于others,无论量将在输入来自DIV1被输入到DIV5第一行将由计算与subtA百分比和我申请这个百分比到其余输入端相应地共享。

只要我选择othersbasis dropdownNaN值在输入来即使当我使用parseFloat如何避免这一点,并如何验证等量的在输入端输入的总和(仅第一行该表格)不应超过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