【发布时间】:2017-12-19 07:07:53
【问题描述】:
我正在以表格形式获取数据。现在我需要合并同月的数据。显示如下表。请帮我解决一下这个。提前致谢 例如:当前表格是这样的
Month | Total Amount
Jan | 100
Jan | 100
Mar | 200
Apr | 300
Apr | 200
我希望输出像
Month | Total Amount
Jan | 200
Mar | 200
Apr | 500
代码如下:
success: function (data) {
if (data.length > 0) {
var tr;
var monthNames = ["Jan", "Feb", "Mar", "Apr", "May", "Jun","Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
for (var i = 0; i < data.length; i++) {
var date = new Date(data[i].CompDt);
var month = monthNames[date.getMonth()];
var total = 0;
var totalamt = data[i].TotalAmt;
tr = $('<tr/>');
tr.append("<td>" + month + "</td>");
tr.append("<td>" + totalamt + "</td>");
$('#GraphTable').append(tr);
}
var total = 0;
for (var i = 0; i < data.length; i++) {
total = total + data[i].TotalAmt;
}
$('#GraphTable').append('<tr style="font-weight: bold; background-color: white"><td colspan="2" align="right">Total: </td><td>' + total + '</td></tr>');
tr = $('<tr style="font-weight: bold; background-color: white" />');
tr.append("<td></td>");
tr.append("<td></td>");
$('#GraphTable').append(tr);
}
else {
tr = $('<tr/>');
tr.append("<th colspan='10' style='text-align:center'>No Data to display</th>");
$('#GraphTable').append(tr);
}
} //end of success
});
【问题讨论】:
-
你的数据是什么?
-
如果可能,我强烈建议在您从 AJAX 请求调用的服务器端代码中修复此问题。
-
@beginner ...我同意 Rory 的最佳解决方案,但可能存在您无法在服务端代码编辑的情况,在这种情况下,我们需要示例 ajax 响应来帮助您出去。我再说一次,如果可以更改服务器端代码,那么我将使用 Rory 的声明。
-
大家好,我无法在服务器端编辑数据。我们可以试试ajax本身吗?这里的数据是“完成日期和每个完成日期的总金额”通过完成日期我得到了月份。
标签: jquery html angularjs json