我正在开发一个旅游门户网站,并使用 DataTables JS 插件来填充结果。
“search.results”是一个 JSON 对象数组,每个对象都包含搜索结果,但是,只有前 30 个被填充,其余的则没有。
控制台不会记录任何错误,并且从“for”循环内登录控制台时会显示所有搜索对象。
我需要将所有结果填充到表中。
请帮忙,提前致谢。
**datatable declaration**
var oTable = $('#search').DataTable({
"bDestroy": true,
"aaSorting": [[4, 'asc']],
"bPaginate": true,
"bInfo": false,
"bFilter": true,
"bScrollCollapse": true,
"fnInitComplete": function() {
this.fnAdjustColumnSizing(true);
}
});
**results population**
for(var j=0; j<search.results.length; j++){
oTable.row.add([
search.results[j].airline,
search.results[j].from,
search.results[j].to,
search.results[j].duration,
search.results[j].fare,
'<button id="button-'+j+'" class="btn btn-change1 book_btn" type="button">book</button>',
]).draw();
};
最佳答案
您在 for 循环中使用 search.results.length,并且分页中的搜索结果限制为 30(由于 "bPaginate": true) 尝试覆盖查询中的默认限制或将 bPaginate 设置为 false
关于jquery - DataTables row.add() 函数不会添加数组中的所有行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25203624/