HTML所需的列总和

时间:2013-08-06 20:24:26

标签: html sum

对于我正在生成信息的表,我有以下html代码,但我还需要它来计算“TranAmt”列的总和。有人可以帮我这个吗?

<p>Hi Marly,</p>
<p>The following customer invoices were posted today:</p>
<table style="width: 1300px;" border="1" cellspacing="1.5" cellpadding="1.5"     align="left">
<thead>
<tr style="background-color: #81BEF7;" align="center" valign="middle">
<td style="text-align: center;"><strong>Customer ID</strong></td>
<td style="text-align: center;"><strong>Customer Name</strong></td>
<td style="text-align: center;"><strong>Customer PO Number</strong></td>
<td style="text-align: center;"><strong>Invoice Number</strong></td>
<td style="text-align: center;"><strong>Invoice Date</strong></td>
<td style="text-align: center;"><strong>Post Date</strong></td>
<td style="text-align: center;"><strong>Invoice Amount</strong></td>
<td style="text-align: center;"><strong>Invoice Sales Tax Amount</strong></td>
<td style="text-align: center;"><strong>Create User</strong></td>
</tr>
</thead>
{BEGIN*REPEAT}
<tbody>
<tr>
<td>{CustID}</td>
<td>{CustName}</td>
<td>{CustPONo}</td>
<td>{TranID}</td>
<td>{TranDate}</td>
<td>{PostDate}</td>
<td>{TranAmt}</td>
<td>{STaxAmt}</td>
<td>{CreateUserID}</td>
</tr>
{END*REPEAT}
</tbody>
</table>

3 个答案:

答案 0 :(得分:1)

如果您使用的是JQuery,则可以使用第n个子选择器在表中添加列的所有项。

http://api.jquery.com/nth-child-selector/

这是一个例子

var rows = $("#table_id tr:gt(0)");
rows.children("td:nth-child(7)").each(function() {
  the_sum += parseInt($(this).text()); 
});

答案 1 :(得分:0)

此函数将帮助您获取提供给它的列标题名称的任何列的总和。但我想建议一件事而不是标签名称thead和tbody plz使用一些id,因为如果你在同一页面中有多个表会产生问题。

function someFunction() {
    var invoiceTotalAmount = getTotal(("invoice amount").toUpperCase());
}

function getTotal(myString) {
  var CellListing = $("thead > tr > td");
  var selIndex=-1;
  var sum = 0;
  CellListing.each(function(index){
    if($(this).children("strong").html().toUpperCase()===myString)
       selndex= index+1;
   });

  var rows = $("tbody >tr");
  rows.children("td:nth-child("+selIndex+")").each(function() {
    sum += parseInt($(this).text()); 
  });
  return sum;
}

运行示例html sum of column needed

答案 2 :(得分:0)

我不知道如何在{FinalTranAmt}中定义变量,所以我向您解释 将最初为0的变量添加为值
对于{TranAmt}中的每次重复添加{FinalTranAmt}&amp;最后打印出来。
我不知道我的结构是否正确。

{FinalTranAmt} = 0;
{BEGIN*REPEAT}
<tbody>
<tr>
<td>{CustID}</td>
<td>{CustName}</td>
<td>{CustPONo}</td>
<td>{TranID}</td>
<td>{TranDate}</td>
<td>{PostDate}</td>
<td>{TranAmt}</td>
<td>{STaxAmt}</td>
<td>{CreateUserID}</td>
</tr>
{FinalTranAmt} += {TranAmt} ;
{END*REPEAT}