Я сталкиваюсь с проблемой, когда пытаюсь загрузить веб-страницу, используя dataTable без записей. После исследования я увидел два варианта использования языковой конфигурации, которые каким-то образом конфликтуют друг с другом при отправке сообщения пользователю.
Я использую версию DataTables 1.10.4 и версию CakePHP 2.5.4.
Когда dataTable загружает данные из Ajax-запроса, сообщение, установленное в loadingRecords, показывается пользователю и говорит «Carregando …».
Если в dataTable есть данные, доступные для отображения, это сообщение от loadingRecords исчезнет, и все данные будут доступны конечному пользователю.
Если нет доступных данных для отображения в dataTable, опция zeroRecords должна вступить во владение и показать пользователю сообщение «Nenhum registro encontrado». Но проблема в том, что сообщение «Carregando …» все еще отображается, и ничего не происходит. Это ужасно, если конечный пользователь ожидает некоторые данные на странице.
Известна ли проблема с сообщением zeroRecords, не работающим? Даже если я попытаюсь использовать emptyTable, этот dataTable не будет работать.
Кстати, после удаления опции loadingRecords и обновления браузера сообщение от zeroRecords работает. НО, если есть данные для обработки, это сообщение все еще там и исчезает только после загрузки всей таблицы.
Вот следующий конфиг dataTable:
$(document).ready(function(){
var Server = window.location.hostname;
$("#datatable-4").DataTable({
//processing: true,
//serverSide: true,
ajax: {
url: "http://"+ Server +"/epedidos/Clientes/RequestAllClientes",
type: 'POST'
},
columns: [
{data: "IdCliente"},
{data: "Inclusao"},
{data: "IdERP"},
{data: "NomeFantasia"},
{
data: "CidadeId",
type: "string"},
{data: "Telefone"}
],
language: {
search: "Buscar:",
loadingRecords: "Carregando...",
processing: "Processando...",
zeroRecords: "Nenhum registro encontrado",
emptyTable: "Não há dados disponíveis na tabela",
lengthMenu: "Mostrando _MENU_",
info: "Mostrando de _START_ a _END_ de _TOTAL_ registros",
infoEmpty: "Mostrando de 0 a 0 de 0 registros",
infoFiltered: "(Filtrado de _MAX_ registros totais)",
infoPostFix: "",
decimal: ",",
thousands: ".",
paginate: {
first: "Primeiro",
previous: "Anterior",
next: "Próximo",
last: "Último"},
}
});
$.fn.dataTable.ext.errMode = 'throw';
});
Может ли кто-нибудь помочь мне с этой проблемой?
Если мне нужно уточнить что-то еще, пожалуйста, дайте мне знать.
На веб-сайте таблиц данных слишком много внимания уделяется неверному JSON.
На сайте таблиц данных есть целый раздел того, что вы ищете:
http://datatables.net/faqs/ (Проверьте обработку на стороне сервера). Я знаю, что это не полное решение, которое вы ищете.
Надеюсь, поможет.
Других решений пока нет …