jQuery计算另一个输入

时间:2015-11-27 03:42:21

标签: javascript jquery html

我正在使用jQuery / javascript和html编写计算器。 我有一个表格中的项目列表。所以当我点击特定项目上的添加项目时,它会在另一个表格中附加一行(表B)。 B中的每一行都有不同的ID。外部B是禁用的输入字段,例如Total = A1 + A2 + An。 在每行中计算2件事。说A& P.用户输入3个值V1 V2 V3。并计算A1 =(V1 * V2 * V3)和P1 =((A1 /总)* 100)。注意:这是在附加行内。 每当表B中的值发生变化或添加新项目时,A&总计重新计算。 P也相对于总值重新计算。我的问题是我无法重新计算P并将其显示在正确的行中。它只更新当前编辑的行。

Image Explanation Here

jQuery("#newRow").append('<tr id="TOYCal' + divID + '"><td><img style="width: 40px; height: 40px; display: inline;"  src="' + icon + '"/></td><td>' + title + '</td><td><input type="number" min="0" step="1" class="form-control akCal" id="inputEmail" onChange="clearfield()" placeholder="Num" data-id="TOYCal' + divID + '"></td><td><input type="number" min="0" step="1" class="form-control akCal V1" onChange="clearfield()" id="inputEmail" placeholder="Hrs/Day" max="24" min="1" data-id="TOYCal' + divID + '"></td><td><input type="number" min="0" step="1" class="form-control akCal V2" onChange="clearfield()" min="1" id="unit" value="' + unit + '" placeholder="unit" data-id="TOYCal' + divID + '"></td><td><input type="number" min="0" step="1" class="form-control akCal V3" onChange="clearfield()" id="inputEmail" min="1" placeholder="V3" data-id="TOYCal' + divID + '"></td><td><input disabled="" class="form-control ItemDay" id="focusedInput" data-id="TOYCal' + divID + '" type="number" value="" placeholder="W/Day"></td><td><input disabled="" class="form-control Percentage" id="focusedInput" data-id="TOYCal' + divID + '" type="number" value="" placeholder="Percent"></td></tr>');

jQuery(document).on('keyup', '.akCal', function() {
  //Get calculation values
  divID = jQuery(this).attr("data-ID");
  var V1 = jQuery('#' + divID + ' .akCal').val(); //alert("Number Items" + NumberItems);
  var V2 = jQuery('#' + divID + ' .ItemUnit').val(); //alert("Unit per item" +UnitPerItem);
  var V3 = jQuery('#' + divID + ' .ItemHours').val();

  var A = V1 * V2 * V3
  var initial = 0;
  var size = jQuery('.ItemDay').length;
  //alert("size " + size);

  jQuery('.ItemDay').each(function() { //ItemDay is id for row field
    var itemval = jQuery(this).val();
    // alert(itemval);
    var value = +initialWatt + +itemval;
    initial = value.toFixed(2);
  });

  jQuery('.totalkWh').val(initial);

  var percent = ((A / initial) * 100).toFixed(2);
  jQuery('#' + divID + ' .Percentage').val(percent);
});

任何建议都会很棒。

0 个答案:

没有答案