【发布时间】:2017-11-24 13:06:41
【问题描述】:
我有一个数组,其中包含一些数据,如下所示。在这个例子中,我显示了 2 个表数据,但它可以超过 2 个。我必须计算每个表的列数、集合 1 和集合 2,然后在每个表的末尾显示。
到目前为止,我已经尝试了以下代码来计算我首先通过计数数组计算可用表数的位置。
<script type="text/javascript">
var count = <?php echo json_encode(count($lists)); ?>;
var total = 0;
for(var i = 1; i <= count; i++)
{
var available = $(".used-community .plant_counter_"+i);
$.each(available, function(key, value)
{
total+=parseInt(available[key].innerText);
});
console.log(total);//edit variable name - totala changed to total
}
</script>
<table class="table" border="1">
<thead>
<tr class="titlerow">
<th>Name</th>
<th>Address</th>
<th>Population</th>
<th>Collection 1</th>
<th>collection 2</th>
</tr>
</thead>
<tbody class="used-community">
<tr id="47" class="rowList middle">
<td>Wangkha</td>
<td>Soi Wangkha 3</td>
<td class="plant_counter_1">100000</td>
<td>31</td>
<td>11315</td>
</tr>
<tr id="43" class="rowList middle">
<td>one</td>
<td>one address</td>
<td class="plant_counter_1">35000</td>
<td>7</td>
<td>2555</td>
</tr>
<tr id="46" class="rowList middle">
<td>Bang</td>
<td>Bang khuwang Rd</td>
<td class="plant_counter_1">6000</td>
<td>2</td>
<td>730</td>
</tr>
<tr bgcolor="#66CCFF">
<td></td>
<td></td>
<td></td>
<td class="col"></td>
<td class="cap"></td>
<td></td>
<td></td>
</tr>
</tbody>
</table>
<table class="table" border="1">
<thead>
<tr class="titlerow">
<th>Name</th>
<th>Address</th>
<th>Population</th>
<th>Collection 1</th>
<th>collection 2</th>
</tr>
</thead>
<tbody class="used-community">
<tr id="45" class="rowList middle">
<td>sap</td>
<td>sap thawi</td>
<td class="plant_counter_2">80000</td>
<td>15</td>
<td>5475</td>
</tr>
<tr id="44" class="rowList middle">
<td>two-nonthaburi</td>
<td>nonthaburi</td>
<td class="plant_counter_2">69000</td>
<td>11</td>
<td>4015</td>
</tr>
<tr bgcolor="#66CCFF">
<td></td>
<td></td>
<td></td>
<td class="col"></td>
<td class="cap"></td>
<td></td>
<td></td>
</tr>
</tbody>
</table>
我的代码正在正确计算类“plant_counter_1”的行,但对于下一个表,它也继续添加表 1 的总和。谁能教我我在哪里做错了,我怎样才能找出其他两列的总和
谢谢
【问题讨论】:
-
好的,您需要将总变量放在第一个循环中 $.each(...) 之前的位置
-
通过使用 for 循环一来增加 i ,您已经选择了所有的 plant_counter_ ,然后将其添加到同一个变量“total”中。由于所有表中的值都将指向同一个变量“总计”。要更新每个表的总变量,请将其放在 `for(var i = 1; i
-
@nullqube 哈哈。谢谢,是的,那是我的错误。如何总结其他列?
标签: javascript php jquery arrays