我需要 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}
最佳答案
SOLUTION
无需转换数据格式,当使用正确的选项时,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' }
]
});
DEMO
参见this jsFiddle用于代码和演示。
关于json - 如何将 HAL JSON 数据转换为 jQuery DataTables 的 JSON 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33013284/