我有一个JSON数据:嵌套的JavaScript对象HTML表格
[
{"OrderId":{"0":"20160620041104"}},
{"GroupId":{"0":"20160620041104"}},
{"Response":{"0":"Error"}},
{"AuthCode":{}},
{"HostRefNum":{}},
{"ProcReturnCode":{"0":"99"}},
{"TransId":{"0":"16172QLEH07028517"}},
{"ErrMsg":{"0":"Kredi karti numarasi gecerli formatta degil."}},
{"Extra":{"SETTLEID":{},"TRXDATE":"20160620 16:11:04","ERRORCODE":"CORE-2012","NUMCODE":"992012"}}
]
所以我想你明白我想要什么。我需要生成html这个数据表:
<tr>
<td>OrderId</td>
<td>20160620...</td>
</tr>
<tr>
<td>GroupId</td>
<td>2016..</td>
</tr>
<tr>
<td colspan="2"><b>Extra</b></td>//just add a empty row. no big deal
</tr>
<tr>
<td>ERRCODE</td>
<td>CORE-2012</td>
</tr> ..
我创建这个递归函数来做到这一点,但它不起作用。
var printObjectKeys = function (currentObject) {
$.each(currentObject,function (index, value) {
if($.type(value) == 'object'){
debugger
var keys = Object.keys(value);
if(keys.length > 0){
$.each(value, function (index_,value_) {
debugger
if($.isNumeric(index_)){
//print table row
$("#tblDetail").append('<tr><td>'+index_+'</td><td>'+value_+'</td></tr>')
}
else
printObjectKeys(value_)
})
}
}
});
}
你能改变回应的格式吗?由于每个属性都位于数组中的自己对象中,因此格式不适合在表中显示。这对于有效访问来说是一个巨大的痛苦。 –