У меня есть четыре динамически сгенерированные таблицы, и у каждой есть ячейка, в которой я вычисляю сумму ячеек в этом столбце, например:
<td id="sum1"></td>
<td id="sum2"></td>
<td id="sum3"></td>
<td id="sum4"></td>
Я рассчитываю эти суммы с помощью оператора SWITCH, в зависимости от того, какие пользователи выбирают из выпадающего списка:
<select id="switch_options">
<option value="1">Option1</option>
<option value="2">Option2</option>
<option value="3">Option3</option>
<option value="4">Option4</option>
</select>
Поскольку пользователи выбирают различные варианты из раскрывающегося списка и вводят некоторые дополнительные данные в текстовое поле, я динамически строю таблицы выше и вычисляю сумму следующим образом:
switch(switch_options)
{
case "1":
//generate table1
$( '#table1> tbody:last' )
.hide()
.append( "<tr><td>" + data.food_name + "</td>" + "<td class=amount>"
+ data.food_amount + "</td>" + "<td>" + data.food_serving + "</td>"
+ "<td>" + data.protein + "</td>" + "<td>" + data.fats + "</td>"
+ "<td>" + data.carbs + "</td>" + "<td>" + data.sugar + "</td>"
+ "<td class=cal_bk>" + calories + "</td>"
+ "<td><img class=delete src=images/del.jpg /></td></tr>" )
.fadeIn( 'slow' );
//Calculate totals for table1
calculateSumbk();
function calculateSumbk() {
$('#table1').each(function(){
// iterate through 'cal' cells in each row:
$("td.cal_bk").each(function() {
bk_sum += parseInt($(this).text());
});
$("#sum1").html(bk_sum);
});
}
case "2":
//generate table2, etc.
У меня есть отдельная таблица, в которой я хотел бы вычислить общие суммы всех других таблиц в такой ячейке:
<td id="totals"></td>
Проблема в том, что мне кажется, что я не нахожу простой способ сделать это - тот факт, что я вычисляю итоги для каждой таблицы по соответствующему оператору переключения, кажется, мешает.
Любые идеи очень ценятся!