Json 获取DataTables以在适当的列中输出对象数组
我正在开发一个化学品数据库web应用程序。使用DataTables 1.10.16和CakePHP 3.5 蛋糕正在生产JSON饲料。样本如下:Json 获取DataTables以在适当的列中输出对象数组,json,datatables,Json,Datatables,我正在开发一个化学品数据库web应用程序。使用DataTables 1.10.16和CakePHP 3.5 蛋糕正在生产JSON饲料。样本如下: [ { "id": 1, "app_id": "ID000001", "name": "Chromium", "ecs": [ { "id": 1, "value": "123-456-7" }, {
[
{
"id": 1,
"app_id": "ID000001",
"name": "Chromium",
"ecs": [
{
"id": 1,
"value": "123-456-7"
},
{
"id": 32,
"value": "222-333-444"
},
],
"cas": [
{
"id": 1,
"value": "987-654-3"
}
]
},
]
对于某些化学品,JSON中有多个EC,JSON中有CAS号CAS
我不知道是否/如何能够让DataTables循环遍历这些对象,并将它们输出到适当的列中,使用诸如标记之类的分隔符
我的表标记如下所示:
<table id="substancesTable" class="table responsive display table-striped" cellspacing="0" width="100%">
<thead>
<tr>
<th>Application ID</th>
<th>EC Number</th>
<th>CAS Number</th>
<th>Chemical Name</th>
</tr>
</thead>
</table>
{
"data": "ecs",
"name": "ec_number",
"title":"EC Number",
"render": function(d,t,r){
return d.map(function(e) {
return e.value;
}).join("<br/>");
}
}
这在填充应用程序ID和化学名称列方面是有效的,但这是因为JSON no数组/对象中有一个简单的1:1映射
EC编号和CAS编号列的输出仅为[object object],并与存在的对象数重复。在上述示例中,该化学品有2个EC编号,因此EC编号下的输出为[object object],[object object]
有人能帮忙吗?我希望通过循环我的JSON并在每个项目之间引入一个中断来生成输出,例如
123-456-7<br>222-333-444
您将需要这样的渲染功能:
<table id="substancesTable" class="table responsive display table-striped" cellspacing="0" width="100%">
<thead>
<tr>
<th>Application ID</th>
<th>EC Number</th>
<th>CAS Number</th>
<th>Chemical Name</th>
</tr>
</thead>
</table>
{
"data": "ecs",
"name": "ec_number",
"title":"EC Number",
"render": function(d,t,r){
return d.map(function(e) {
return e.value;
}).join("<br/>");
}
}
在中间工作