我有一個簡單的HTML表格/表格與一列(排名)有一個選擇菜單有2個選項:中等或高。我需要查找排列列中的單元格的所有行=「中等」,並計算同一行中另一個單元格的總數(平均小時數/周),並對單元格爲「高」的所有行重複此操作。這裏有一個JS小提琴顯示出一個樣品空單/表:在HTML表格中的飛行表格計算
注意行數將不被事先固定的 - 有可能是1或更多。我有一個腳本根據小時/周和周/年字段的輸入計算平均小時/周,但無法讓它也計算兩個排名中的每一個的總和。
只是爲了澄清,如果形式具有這些選擇:
Row 1: Ranking = "Moderate" Average Hours/Week = 2
Row 2: Ranking = "High" Average Hours/Week = 4
Row 3: Ranking = "Moderate" Average Hours/Week = 6
Row 4: Ranking = "High" Average Hours/Week = 8
的總中度細胞應與*(6 + 2)和總高的細胞的值最終應用的值最終12(4 + *)。理想情況下,只要排名,小時/周或周/年的值在任何行中發生變化,都會發生這種情況。
下面是我想出到目前爲止,這不是爲我工作:
var moderateTotal = 0;
var highTotal = 0;
$("#activities").find("tr").each(function() {
var tr = $(this);
var level = tr.find("td:nth-child(2)").html();
var value = tr.find("td:nth-child(5)").html();
switch(level)
{
case "Moderate":
moderateTotal += value*1;
break;
case "High":
highTotal += value*1;
break;
}
});
$("#moderateTotal").val(moderateTotal);
$("#highTotal").val(highTotal);
});
您在表單中多次重複使用「風險」的ID。 ID必須是唯一的。如果您將每週的小時數輸入元素指定爲不同的類,它也會通過jQuery更容易地進行計算。 – j08691