Javascript 如何在jQuery和html中计算文本框值

Javascript 如何在jQuery和html中计算文本框值,javascript,html,jquery,Javascript,Html,Jquery,我在html的jQuery中遇到了一个问题 我有执行产品的代码,但我需要在计算中进行一些更改,下面是我的代码 所有结果将在一个字段中计算,就像我做的一样 <html lang="en"> <head> <title></title> <script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascrip

我在html的jQuery中遇到了一个问题 我有执行产品的代码,但我需要在计算中进行一些更改,下面是我的代码 所有结果将在一个字段中计算,就像我做的一样

<html lang="en">
<head>
<title></title>
   <script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
</head>
<body>


<script>
$(document).on('keyup','input.expenses',function(){
  $expenses = $(this).parents('table').find('.expenses');
  $expenseTotal = $(this).parents('table').find('#expenses_sum');
  $expenseTotal.val('1');
  $.each($expenses,function(index,object){      
    if($(object).val()!='')
    {
 $expenseTotal.val(parseInt($expenseTotal.val())*parseInt($(object).val()));
    }
  })
});
</script>


<table border="1">
  <tr>
      <th>No</th>
      <th>A</th>
      <th>B</th>
      <th>C</th>
      <th>Total</th>
  </tr>
  <tr>
      <td>1</td>
      <td><input class="expenses"></td>
      <td><input class="expenses"></td>  
      <td><input class="expenses"></td><td>
      <input id="expenses_sum"></td>
  </tr>
  <tr>
      <td>2</td>
      <td><input class="expenses"></td>
      <td><input class="expenses"></td>
      <td><input class="expenses"></td>
  </tr>
  <tr>
      <td>3</td>
      <td><input class="expenses"></td>
      <td><input class="expenses"></td>
      <td><input class="expenses"></td>
  </tr>

</table>
 
</body>
</html>

$(document).on('keyup','input.expenses',function(){
$expenses=$(this.parents('table')。find('.expenses');
$expenseTotal=$(this).parents('table').find('expenseSum');
$expenseTotal.val('1');
$.each($费用、功能(索引、对象){
if($(对象).val()!=“”)
{
$expensecotal.val(parseInt($expensecotal.val())*parseInt($(object.val()));
}
})
});
不
A.
B
C
全部的
1.
2.
3.
我需要的逻辑是

A乘以C

(B乘以C)-(A乘以C)

然后显示结果 我想在jquery中管理每个文本框本身,以便进行计算
请任何人都可以帮助我

您只想在您编辑的输入存在的行实例中工作,然后在该行中使用
find()
收集所有费用类元素并设置总额

比如:

$(document).on('keyup','input.expenses',function(){
var$row=$(this).closest('tr'),
//仅收集此行中的3个输入
$exp=$row.find('.expenses'),
a=$exp.eq(0).val(),//第一个是
b=$exp.eq(1.val(),//第二个是b
c=$exp.eq(2.val();//第三个是c
//(B乘以C)-(A乘以C)
var总计=b*c-a*c;
$row.find(“.expenses\u sum”).text(总计)
})

不
A.
B
C
全部的
1.
2.
3.

侧注;而不是将运行结果粘贴在DOM元素中,然后每次需要对其进行数学修改时,都必须对其进行转换和解析;使用一个变量,修改该变量,并将最终结果放在元素的末尾。每一行都应该有自己的总计吗?不,所有行都必须在一个单元格中显示结果作为我的代码工作Hi charlietfl,代码工作正常,但我不需要每一行都有自己的总计,我要显示所有行的总计。请帮我完成剩下的一个。谢谢你,然后给我一个适当详细的解释。按行或列进行计算?我需要所有行影响总计的列。这意味着第一行、第二行和n行的计算将增加整个合计列的值。例如,在填充所有文本框后,第一行总计为100第二行总计为100 n行总计为100。如果总数只影响第一行,没问题,但我认为简单的方法是在整个列中显示它们。感谢charlietflOr,如果可能的话,您可以添加另一列来计算总计,或者添加最后一行来计算总计。一个就够了。谢谢,在每一行上循环,使用我的代码得到每一行的总数,然后在每次迭代中将其添加到一个总数中。循环完成后,更新需要更新的内容