var json={"Table1":[{"XMID":"B0","ysdate":"2015-01-01T00:00:00","SZH":7373.0},{"XMID":"B0","ysdate":"2015-01-02T00:00:00","SZH":7845.0},{"XMID":"C0","ysdate":"2015-01-01T00:00:00","SZH":327.0},{"XMID":"C0","ysdate":"2015-01-02T00:00:00","SZH":295.0},{"XMID":"D","ysdate":"2015-01-01T00:00:00","SZH":211.0},{"XMID":"D","ysdate":"2015-01-02T00:00:00","SZH":254.0},{"XMID":"K","ysdate":"2015-01-01T00:00:00","SZH":7911.0},{"XMID":"K","ysdate":"2015-01-02T00:00:00","SZH":8394.0}]}
最终想要js输出表格:
ysdate B0 C0 D K
2015-01-01 7373.0 327.0 211.0 7911.0
2015-01-02 7845.0 295.0 254.0 9394.0
http://ask.csdn.net/questions/161313
发了2个贴?发个自动标题的给你,更新了下代码
var json = { "Table1": [
{ "XMID": "B0", "ysdate": "2015-01-01T00:00:00", "SZH": 7373.0 },
{ "XMID": "B0", "ysdate": "2015-01-02T00:00:00", "SZH": 7845.0 },
{ "XMID": "C0", "ysdate": "2015-01-01T00:00:00", "SZH": 327.0 },
{ "XMID": "C0", "ysdate": "2015-01-02T00:00:00", "SZH": 295.0 },
{ "XMID": "D", "ysdate": "2015-01-01T00:00:00", "SZH": 211.0 },
{ "XMID": "D", "ysdate": "2015-01-02T00:00:00", "SZH": 254.0 },
{ "XMID": "K", "ysdate": "2015-01-01T00:00:00", "SZH": 7911.0 },
{ "XMID": "K", "ysdate": "2015-01-02T00:00:00", "SZH": 8394.0}]
};
var rows = json.Table1,item;
var result = {},ritem,keys=',',key;
for (var i = 0, j = rows.length; i < j; i++) {
item = rows[i];
ritem = result[item.ysdate] || {};
key = item.XMID;
if (keys.indexOf(',' + key + ',') == -1) keys += key + ',';
if (ritem[key]) ritem[key] += ',' + item.SZH;
else ritem[key] = item.SZH;
result[item.ysdate] = ritem;
}
var s = '<table border="1"><tr><th>ysdate</th>';
var arr = keys.replace(/^,|,$/g,'').split(',');
for (var i = 0; i < arr.length; i++) s += '<th>'+arr[i]+'</th>';
s += '</tr>';
for (k in result) {
s += '<tr><td>' + (k.split('T')[0]) + '</td>'
for (var i = 0; i < arr.length; i++) s += '<td>' + (result[k][arr[i]] || '') + '</td>';
}
s += '</table>';
document.write(s);
for(var i=0;i /* var name1=$("#companyName").html();
var question1=$("#companyQuestion").html();
var regtime1=$("#companyRegTime").html();
*/
var name=$("").text(list[i].companyName);
var question=$("").text(list[i].question);
var regtime=$("").text(list[i].regtime);
var selTr=$("").append(name).append(question).append(regtime);
$("#selResult").append(selTr);
}
循环长度,类似于这样
for(var i=0;i var name=$("").text(list[i].companyName);
var question=$("").text(list[i].question);
var regtime=$("").text(list[i].regtime);
var selTr=$("").append(name).append(question).append(regtime);
$("#selResult").append(selTr);
下面的是我format过的,就是你的Josn返回的对象
要怎么处理一目了然。
{
"Table1": [
{
"XMID": "B0",
"ysdate": "2015-01-01T00:00:00",
"SZH": 7373
},
{
"XMID": "B0",
"ysdate": "2015-01-02T00:00:00",
"SZH": 7845
},
{
"XMID": "C0",
"ysdate": "2015-01-01T00:00:00",
"SZH": 327
},
{
"XMID": "C0",
"ysdate": "2015-01-02T00:00:00",
"SZH": 295
},
{
"XMID": "D",
"ysdate": "2015-01-01T00:00:00",
"SZH": 211
},
{
"XMID": "D",
"ysdate": "2015-01-02T00:00:00",
"SZH": 254
},
{
"XMID": "K",
"ysdate": "2015-01-01T00:00:00",
"SZH": 7911
},
{
"XMID": "K",
"ysdate": "2015-01-02T00:00:00",
"SZH": 8394
}
]
}
<!DOCTYPE html>
<html>
<body>
<script>
var json={"Table1":[{"XMID":"B0","ysdate":"2015-01-01T00:00:00","SZH":7373.0},{"XMID":"B0","ysdate":"2015-01-02T00:00:00","SZH":7845.0},{"XMID":"C0","ysdate":"2015-01-01T00:00:00","SZH":327.0},{"XMID":"C0","ysdate":"2015-01-02T00:00:00","SZH":295.0},{"XMID":"D","ysdate":"2015-01-01T00:00:00","SZH":211.0},{"XMID":"D","ysdate":"2015-01-02T00:00:00","SZH":254.0},{"XMID":"K","ysdate":"2015-01-01T00:00:00","SZH":7911.0},{"XMID":"K","ysdate":"2015-01-02T00:00:00","SZH":8394.0},{"XMID":"K2","ysdate":"2015-01-02T00:00:00","SZH":8395.0}]}
function dealjson(jsonData){
var arrTable = json["Table1"];
var tableRow;
var xmid='';
var ysdate = '';
var szh='';
var resultObj={};
var head={};
var rowdate=[];
for(var i=0;i<arrTable.length;i++){
tableRow = arrTable[i];
xmid = tableRow['XMID'];
ysdate = tableRow['ysdate'].split('T')[0];
szh = tableRow['SZH'];
if(!resultObj[ysdate]){
resultObj[ysdate]={}
}
resultObj[ysdate][xmid]= szh
head[xmid]='';
}
var output=[0];
output[0]=[];
output[0].push('ysdate');
for ( var str in head){ // 方法
if ((typeof str=='string')&&str.constructor==String){
output[0].push(str);
}
}
for(var row in resultObj){
if ((typeof row =='string')&&row.constructor==String){
var olength = output.length;
if(!output[olength]){
output[olength]=[];
}
output[olength].push(row);
for(var i=1;i<output[0].length;i++){
if(resultObj[row][output[0][i]]){
output[olength].push(resultObj[row][output[0][i]]);
}else{
output[olength].push('');
}
}
}
}
var divhtml = '';
for(i=0;i<output.length;i++){
for(j=0;j<output[i].length;j++){
if(j>0){
divhtml = divhtml +","+output[i][j];
}else{
divhtml = divhtml + '</br>' + output[i][j];;
}
}
}
document.getElementById('div1').innerHTML = divhtml;
}
</script>
<div id='div1'></div>
</body>
<script>
dealjson();
</script>
</html>
这和刚刚看的是一个问题。已经解决了吧。