我通过ajax填充'DataTable'表并且工作正常。但是,我还想返回一个以管道分隔的序列化唯一ID字符串,这些ID形成要显示的行。我在标准的ajax调用中使用dataSrc选项:
$('#displayRecords').dataTable( {
"lengthMenu": [ [10, 25, 50, 100, -1], [10, 25, 50, 100, "All"] ],
"ajax": {
"url": "globalJSON/recordsTable.php",
"dataSrc": "recordsTable"
}
});
这样可以在json返回的recordsTable数组之上工作,我也想获取字符串'recordsSerialised',显然在更广泛的范围内使用它。
我认为使用ajax调用作为函数是答案,但我不确定如何实现它。文档读起来好像我只是通过替代$ .ajax,$ .post,$ .whatever获取json并将返回值传递给函数变量。任何人都可以验证我是在正确的路线上。如果没有,任何建议或更正都会很棒。
答案 0 :(得分:1)
你走在正确的轨道上。只要您dataSrc
DataTable的相应数据,您可以为return
调用函数。假设您的json响应包含2个数组recordsTable
和recordsSerialized
$('#displayRecords').dataTable({
"ajax": {
"lengthMenu": [ [10, 25, 50, 100, -1], [10, 25, 50, 100, "All"] ],
"url": "globalJSON/recordsTable.php",
"dataSrc": function (json) {
// do something with json.recordsSerialized here
return json.recordsTable;
}
}
});
我确定你已经看过这个了但是这里仍然是文档的链接:https://datatables.net/reference/option/ajax