我需要JSON数组格式的输出数据与jQuery DataTables一起使用,但Apigility的API提供了HAL + JSON。我如何转换它以便我可以将它从API的fetchAll方法传递到Datatables的AJAX URL?
这是HAL + JSON的样子:
{"_links":{"self":{"href":"http:\/\/parekh.com\/exportmanager\/courses"}},"_embedded":{"courses":[{"Module Title":"Preventing Harassment","Module ID":"HUR602","Module Language":"English"},{"Module Title":"Conflict","Module ID":"COM236","Module Language":"Dutch"},{"Module Title":"Workplace","Module ID":"HUR711","Module Language":"Dutch"}]},"total_items":3}
答案 0 :(得分:4)
<强>解强>
无需转换数据格式,当使用正确的选项时,jQuery DataTables能够读取复杂的结构。
使用ajax.dataSrc
选项定义表的数据源,使用columns.data
选项为每列设置数据源。
var table = $('#example').DataTable({
ajax: {
url: 'https://api.myjson.com/bins/3ebaq',
dataSrc: '_embedded.courses'
},
columns: [
{ data: 'Module Title' },
{ data: 'Module ID' },
{ data: 'Module Language' }
]
});
<强>样本强>
请参阅this jsFiddle以获取代码和演示。