【发布时间】:2019-07-30 13:10:07
【问题描述】:
我正在使用来自 datatables.net 的 DataTable。我使用 Ajax 和 PHP 来动态填充 DataTable。挑战在于只有 Ajax 响应/数组的第一行显示在 DataTable 中。 我花了两天时间浏览互联网,但没有找到解决问题的方法。
正如您在下面看到的,我得到了一个 Ajax 响应,我循环通过它来创建一个名为“displayresult”的数组。该数组使用array.push 填充。数组的值用于填充 DataTable。如前所述,只有数组的第一行显示在 DataTable 中。
数组如下所示:
[{"1":"201909074","2":"吉姆是个很酷的人","4":"2019-06-05"},
{"1":"201906753","2":"简是个酷女孩","4":"2019-04-30"},
{"1":"201906648","2":"福福是一只很酷的狗","4":"2019-04-26"}]
$.ajax({
url: '../../core/search/get_general_search.php',
data:{sok:sok},
dataType: 'json',
success: function(response)
{
console.log(JSON.stringify(response));
var searchResult = response;
var displayresult = [];
for (var i in searchResult)
{
var row = searchResult[i];
var reference = row[1];
var heading = row[2];
var documentDate = row[4];
displayresult.push(reference, heading, documentDate);
}
$('#result_table').DataTable({
"responsive": true,
"searching": false,
"aaData": [displayresult]
});
}
}); //end ajax
【问题讨论】:
-
您是否尝试将
response直接在aaData中作为"aaData": [response]传递?? -
是的,它实际上适用于“aaData”:响应。没有括号。由于在呈现之前对数据进行排序,需要将数据添加到新数组中
标签: jquery arrays datatables