Как показать пустое сообщение данных в Datatables

предположим, я иногда получаю пустые данные с сервера, я не хочу отображать сообщение о найденных данных в DataTables?. Как это возможно?

6 ответов


Если вы хотите настроить сообщение, которое отображается на пустой таблице, используйте это:

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

С Datatable 1.10 вы можете сделать следующее:

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

на полные доступные datatables пользовательские сообщения для таблицы взгляните на следующую ссылку ссылка//язык


более поздние версии dataTables следующие language настройки (взято из здесь):

  • "infoEmpty" - отображается при отсутствии записей в таблице
  • "zeroRecords" - отображается, когда нет записей, соответствующих фильтрация

например

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

Примечание: поскольку имена свойств не содержат специальных символов, вы можете удалить кавычки:

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

по умолчанию вид сетки позаботится, просто передайте пустой набор данных.


стоит отметить, что если вы возвращаете данных на стороне сервера, вы должны поставить атрибут данных, даже если его нет. Он не читает recordsTotal или recordsFiltered но полагается на количество объектов данных


вы также можете сделать это initComplete ниже

"initComplete": function(settings, json) {

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

    }

поздно в игру, но вы также можете использовать локализации файла

DataTable предоставляет .json локализованный файл, содержащий ключ sEmptyTable и соответствующее локализованное сообщение.

например, просто загрузите локализованный файл json на вышеуказанном ссылке, затем инициализировать Datatable вот так :

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

IMHO, это намного чище, потому что ваш локализованный контент находится во внешнем файл.

этот синтаксис работает для DataTables 1.10.16, я не тестировал предыдущие версии.