我生成了多个表,我正在计算每个表的总计列。
以下适用于第一个表,但是如果我删除“:first”,那么它会给我所有表的总和,这是我不想要的。
for (int i = 0; i < numAssets; i++){
std::string& hitVarName1 = (isKO ? "isKO" : "isKI") + Format::toString(i + 1);
//use hitVarname1 with some other function
}
当所有类和td类相同时,如何对每个表执行上述操作,并在每个表下使用摘要。它没有很好的编号表类,因为可能有任何数量。
答案 0 :(得分:3)
将表格包裹在.each循环中
jQuery('table.views-table').each(function(i,el){
var table = jQuery(el);
var total = 0;
table.find('td.views-field-qty').each(function()
{
var price = parseInt(jQuery(this).text());
if (!isNaN(price))
{
total += price;
}
});
table.after('<p> Total Tickets Sold: <strong>' + total + '</strong></p>');
});
答案 1 :(得分:2)
您需要修改逻辑,以便在桌面上调用each()
,然后再在该表中的每个td
调用。试试这个:
jQuery(function($) {
$('table.views-table').each(function() {
var $table = $(this), total = 0;
$table.find('td.views-field-qty').each(function() {
total += parseInt(jQuery(this).text(), 10) || 0;
});
$table.after('<p> Total Tickets Sold: <strong>' + total + '</strong></p>');
});
});
请注意,您可以使用if
运算符作为提供变量默认值的快捷方式,从而无需||
语句。