Comment afficher un message de données vide dans Datatables

Supposons que je reçois des données vides du serveur parfois, je veux afficher aucun message de données trouvées dans DataTables?. Comment est-ce possible?

61
demandé sur Gyrocode.com 2013-01-17 13:24:06

6 réponses

Si vous souhaitez personnaliser le message affiché sur une table vide, utilisez ceci:

$('#example').dataTable( {
    "oLanguage": {
        "sEmptyTable":     "My Custom Message On Empty Table"
    }
} );

Depuis Datatable 1.10 vous pouvez faire ce qui suit:

$('#example').DataTable( {
    "language": {
        "emptyTable":     "My Custom Message On Empty Table"
    }
} );

Pour les messages personnalisés Complete availble DataTables pour la table, consultez le lien suivant reference / option / language

110
répondu Daniel 2015-08-10 09:00:17

Les versions ultérieures de dataTables ont les paramètres language suivants (extraits de ici):

  • "infoEmpty" - affiche lorsqu'il n'y a pas d'enregistrements dans la table
  • "zeroRecords" - affiché lorsqu'il n'y a pas d'enregistrements correspondant au filtrage

Par exemple

$('#example').DataTable( {
    "language": {
        "infoEmpty": "No records available - Got it?",
    }
});

Remarque: Comme les noms de propriété ne contiennent pas de caractères spéciaux vous pouvez supprimer les guillemets:

$('#example').DataTable( {
    language: {
        infoEmpty: "No records available - Got it?",
    }
});
7
répondu Gone Coding 2015-07-31 08:45:23

Par défaut, la vue de la grille prendra soin, il suffit de passer un ensemble de données vide.

1
répondu Naruto 2013-01-17 10:16:57

Il convient de noter que si vous renvoyez des données côté serveur, vous devez fournir l'attribut Data même s'il n'y en a pas. Il ne lit pas recordsTotal ou recordsFiltered mais s'appuie sur le nombre de l'objet de données

1
répondu Antony 2016-10-19 19:52:54

Vous pouvez aussi le faire dans initComplete comme ci-dessous

"initComplete": function(settings, json) {

        $('.dataTables_empty').html("<span class='label label-danger'>No records found</span>");

    }
1
répondu sumit 2017-07-02 22:46:54

En retard dans le jeu, mais vous pouvez également utiliser un fichier de localisation

DataTable fournit un fichier .json localisé, qui contient la clé sEmptyTable et le message localisé correspondant.

Par exemple, téléchargez simplement le fichier JSON localisé sur le lien ci-dessus , puis initialisez votre Datatable comme ceci:

$('#example').dataTable( {
    "language": {
        "url": "path/to/your/json/file.json"
    }
});

IMHO, c'est beaucoup plus propre, car votre contenu localisé est situé dans un fichier externe.

Cette syntaxe fonctionne pour DataTables 1.10.16 , Je n'ai pas testé sur les versions précédentes.

0
répondu AlexB 2018-03-19 18:57:17