下面是我的 api 响应,
{ "aaData":{"req":[{"requests":"132"}]}}
需要在jquery数据表中显示请求值 下面是我的代码,
"aoColumnDefs": [
{
"aTargets": [0],
"mData":"req[0].requests",
},
但是上面的代码不起作用,但如果将 API 响应更改为下面,
{ "aaData":{"req":"132"}}
"aoColumnDefs": [
{
"aTargets": [0],
"mData":"req",
},
上面的代码工作.....我如何从这种响应{ "aaData":{"req":[{"requests":"132"}]}}
访问请求值,Anyhelp表示赞赏。
显而易见的答案是data.aaData.req
:
aaData: data.aaData.req,
aoColumnDefs: [{
aTargets: [0],
mData: 'requests',
sTitle: 'requests'
}]
http://jsfiddle.net/0f9Ljfjr/973/因为没有其他选择。唯一合适的数据源是req
项,因为它是一个对象数组。
但是,如果您实际上想要一个具有嵌套子项的aaData
数据源,那么您的 JSON 应如下所示:
var data = { "aaData":[
{ "req":[{"requests":"132"}]} },
{ "req":[{"requests":"133"}]} }
]};
aaData
对象数组,然后对子对象或数组索引使用点表示法:
var table = $('#example').dataTable({
aaData: data.aaData,
aoColumnDefs: [{
aTargets: [0],
mData: 'req.0.requests',
sTitle: 'requests'
}]
})
http://jsfiddle.net/0f9Ljfjr/974/
根据dataTable的文档:https://datatables.net/examples/ajax/objects_subarrays.html
我认为您应该尝试像以下情况一样进行测试;(还没有测试过(
"aoColumnDefs": [
{
"aTargets": [0],
"mData":"req.requests",
},
如果我理解正确,那么您可以转向请求
responseBody.aaData.req[0].requests
您可以尝试如下
"aoColumnDefs": [
{
"aTargets": [0],
"mData":"req[0]["requests"],
}
而不是
"aoColumnDefs": [
{
"aTargets": [0],
"mData":"req[0].requests",
},