jQuery:使用列值的算术运算和更新时的更新
我有一个表,对于每一行,我必须计算一些算术运算的结果并将其呈现在不同的列上。 当任何输入发生变化时,必须重新计算这些操作。
- 每行都有一个唯一的ID。
- 每个列输入字段都有自己的名称(尽管每行重复名称)
这是包含样本数据的表的结构:
- 第一列:项目名称
- 第二栏(a):从一个属性获得的固定值
提出的对象。 - 第三栏(b):第一栏
- 第四栏(c):第二栏
- 第五栏:(b)+(c)的结果
-
第六栏。 (a)*(b)的结果
Element Name ABC @Html.DisplayFor(modelItem => machine.CoinValue) 到目前为止,我收到了帮助,介绍了第五栏的结果:
$(document).ready(function() { $('.toBeCalced').change(function() { var row = $(this).closest('tr'); var valuesToSum = row.find('.toBeCalced'); var total = 0; $.each(valuesToSum, function(index, item) { total += parseInt($(item).val()); }); var totalInput = row.find('.sumtotal')[0]; $(totalInput).val(total); }); });
当我需要将第三列用于不同于和的操作时,问题出现了,因为我使用的jQuery将所有具有类
toBeCalced
的输入toBeCalced
。是否可以使用这些输入的
name
来区分? 例如://Add a name to this input
@Html.DisplayFor(modelItem => machine.CoinValue) $(document).ready(function() { $('.toBeCalced').change(function() { var row = $(this).closest('tr'); var valuesToSum = row.find('.toBeCalced'); var MultiplyInput1 = row.find('td[name=CoinValue]'); //new var MultiplyInput2 = row.find('input[name=Validos]'); //new var total = 0; var multiplyresult = 0; //new $.each(valuesToSum, function(index, item) { total += parseInt($(item).val()); //multiply and present the result in input:name'ProductTotal' }); var totalInput = row.find('.sumtotal')[0]; $(totalInput).val(total); }); });这是我的想法,但我真的不知道如何把它放在代码中。