【问题标题】:Jquery Calculate each column count based on first columnJquery根据第一列计算每列计数
【发布时间】:2016-09-06 18:51:31
【问题描述】:

我有下表:

a   b    c   d
--------------  
5   2   25  25  
2   48  20  20  
5   1   22  22  
3   4   31  31  
3   3   33  33  
3   6   43  43  
3   8   45  45  
3   5   42  42  
3   11  37  37  
3   7   40  40  
3   10  36  36  
1   35  40  40  
3   22  38  38  
3   23  35  35  
1   31  34  34  

我需要根据A列组计算每列的总和,即按A分组,结果输出:

a  b   c   d
------------    
1 20  30  15    
2 30  20  24    
3 10  30  16

谁能帮帮我

【问题讨论】:

标签: javascript jquery


【解决方案1】:

您可以使用var table = $('#example-table').tableToJSON(); 将您的数据转换为json。然后在生成的 json 和 for 循环的帮助下,您可以实现您的目标。

点击here GitHub 链接获取 tableToJSON()

【讨论】:

  • 嗨,我阅读了 json 文件并制作了表格。我从表中询问我需要根据第一列组计算每列的总和,即在 mysql 中我们按列 a 进行分组。类似于我要问的
  • 你能和我分享一下json我会想出解决方案
【解决方案2】:

此代码应该可以帮助您按第一列的总和计算分组

$(document).ready(function(){
  var group_sum={};
  $("#mytable tbody tr").each(function(){
    element=$(this).find('td:first').text();
    others=$.map($(this).find('td').not(':first'),function(ele,i){
      return parseFloat($(ele).text());
    });
    if(group_sum[element]==undefined)
    {
    group_sum[element]=others;
    }
    else
    {
      for(i in others)
      {
         group_sum[element][i]+=others[i];
      }
    }
    
  })
  console.log(group_sum);

})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<table id="mytable">
<thead>
	<tr>
		<th>A</th>
		<th>B</th>
		<th>C</th>
		<th>D</th>
	</tr>
</thead>
<tbody>
	<tr>
		<td>1</td>
		<td>11</td>
		<td>12</td>
		<td>13</td>
	</tr>
	<tr>
		<td>1</td>
		<td>10</td>
		<td>10</td>
		<td>10</td>
	</tr>
	<tr>
		<td>2</td>
		<td>10</td>
		<td>10</td>
		<td>10</td>
	</tr>
	<tr>
		<td>3</td>
		<td>10</td>
		<td>10</td>
		<td>10</td>
	</tr>
	<tr>
		<td>3</td>
		<td>10</td>
		<td>10</td>
		<td>10</td>
	</tr>

	<tr>
		<td>3</td>
		<td>10</td>
		<td>10</td>
		<td>10</td>
	</tr>
</tbody>
</table>

【讨论】:

    猜你喜欢
    • 2014-06-19
    • 2021-03-16
    • 1970-01-01
    • 1970-01-01
    • 2021-04-12
    • 1970-01-01
    • 2017-08-20
    • 2015-06-13
    • 2019-02-11
    相关资源
    最近更新 更多