我有一个包含18000行的数据库。 DataTable显示前500行。
如何增加可显示的条目数?
pageLength
& lengthMenu
属性不会影响结果。
game_db.php
<?php
function getGames() {
$query = "select * FROM games LIMIT 10000";
try {
global $db;
$games = $db->query($query);
$game = $games->fetchAll(PDO::FETCH_ASSOC);
header("Content-Type: application/json", true);
echo '{"games": ' . json_encode($game) . '}';
} catch(PDOException $e) {
echo '{"error":{"text":'. $e->getMessage() .'}}';
}
}
?>
main.js
function renderList(data){
list = data.games;
console.log("renderList");
$('#admin_table_body tr').remove();
$.each(list, function(index, games){
$('#admin_table_body').append('<tr><td>' +games.title+'</td><td>'+games.genre+'</td><td>'
+games.platform+'</td><td>' +games.score_phrase+'</td><td>'
+games.score+'</td><td>'+games.release_year+'</td><td>'+games.release_month+'</td><td>'
+games.release_day+'</td><td>'+games.editors_choice+'</td><td>\n\
<a href="#" id="'+games.id+'" "span class="fa fa-pencil" data-toggle="modal" data-target="#editModal">Edit</a></td></tr>');
});
$('#admin_table').DataTable();
这将生成数据表中的行。
答案 0 :(得分:2)
使用iDisplayLength参数
$(document).ready( function() {
$('#example').dataTable( {
"iDisplayLength": 1000 // to display 1000 rows
"iDisplayLength": -1 // to display all rows
} );
} )
答案 1 :(得分:1)
首先,您没有正确使用DataTables。您正在创建表而没有DataTables库的帮助。这就是为什么pageLength
&amp; lengthMenu
选项不起作用。
$('#admin_table_body').append('<tr><td>' +games.title+'</td><td>'+games.genre+'</td><td>'
+games.platform+'</td><td>' +games.score_phrase+'</td><td>'
+games.score+'</td><td>'+games.release_year+'</td><td>'+games.release_month+'</td><td>'
+games.release_day+'</td><td>'+games.editors_choice+'</td><td>
<a href="#" id="'+games.id+'" "span class="fa fa-pencil" data-toggle="modal" data-target="#editModal">Edit</a></td></tr>');
相反,你应该使用如下所示。有关详细信息,请参阅DataTables Ajax sourced data doc。
$('#example').DataTable( {
"ajax": "path/of/your/php_file.php"
} );
现在您可以使用pageLength
选项。请注意,如果使用paging
选项禁用pagination
,则会自动禁用此选项,因为在没有分页时它与之无关。
$('#example').DataTable( {
"ajax": "path/of/your/php_file.php",
"pageLength": 700
} );
我建议你反对增加pageLength
以支持表现。有关详细信息,请参阅this thread。