web-dev-qa-db-fra.com

Comment modifier les résultats par valeur de page dans les tables de données

Datatables a une option pour sélectionner le nombre d'enregistrements affichés par page. La valeur par défaut commence à 10, 25, 50 et 100. Comment puis-je la changer pour qu'elle commence à 5 au lieu de 10? 10 enregistrements est un peu trop et prend beaucoup de place dans ma conception actuelle . Merci!

http://datatables.net/

34
detj

Vous souhaiterez utiliser le paramètre iDisplayLength lorsque vous initialiserez l'objet DataTable. Voici l'exemple qu'ils énumèrent dans leur documentation:

$(document).ready( function() {
    $('#example').dataTable( {
        "iDisplayLength": 50
    } );
} )

Plus d'informations peuvent être trouvées ici: http://www.datatables.net/usage/options

67
seneyr

La bonne réponse serait d'utiliser les deux et d'afficher une longueur de 5:

$(document).ready( function(){
    $('#table').dataTable({
    "iDisplayLength": 5,
    "aLengthMenu": [[5, 10, 25, 50, -1], [5, 10, 25, 50, "All"]]
    });
});

Si vous utilisez JUST "iDisplayLength", la liste déroulante n'aura pas cette longueur dans les options plus tard ou lors du chargement de la page (à la place, la première option, IE 10 par défaut) Si vous utilisez JUST "aLengthMenu", vos résultats seront toujours par défaut à 10 au lieu de la première option de menu.

85
TheFrack
$.extend(true, $.fn.dataTable.defaults, {
    "lengthMenu": [[5, 10, 15, 20, 25], [5, 10, 15, 20, 25]],
    "pageLength": 5

});
7
Asmita Savaliya

La réponse a résolu mon problème d'avoir besoin du scénario suivant 

$(document).ready( function(){
    $('#table').dataTable({
  "aLengthMenu": [[10, 25, 50, 100], ["10 Per Page", "25 Per Page", "50 Per Page", "100 Per Page"]]
    });
});

3
Captain Red

Je me rends compte que cette question est ancienne, mais la réponse acceptée ne répond pas à la question du PO. 

La solution consiste à remplacer l'option aLengthMenu lors de l'initialisation du dataTable. Voir ici: http://datatables.net/examples/advanced_init/length_menu.html

2
Greg M.

Vous pouvez simplement ajouter:

"lengthMenu": [ 
 [10, 25, 50, -1], 
 [10, 25, 50, "All"] 
] // remember to add  "," if you initialize more option manually

ou si vous voulez seulement ajouter cette option

$('#tablename').dataTable( {
  "lengthMenu": [ [10, 25, 50, -1], [10, 25, 50, "All"] ]
} );

ce qui vous donnera une liste déroulante pour sélectionner le nombre d'enregistrements par page en pagination.

0

C'est à peine pour les tables de données 1.9
"iDisplayLength": 50 

0
Gulfam Khan