当我试图使用dataTable加载一个没有任何记录的网页时,我将面临一个问题。在调查之后,当我在语言配置中使用时,我看到了两个选项,它们在向用户发送消息时会发生冲突。
我使用的是DataTables 1.10.4版本和cakephp 2.5.4版本。
当dataTable从请求Ajax加载数据时,loadingRecords中设置的消息将显示给用户并说“Carregando.”。
如果有可在dataTable中显示的数据,则来自loadingRecords的消息将消失,所有数据都可供最终用户使用。
如果在dataTable中没有可用的数据显示,则选项zeroRecords应该接管并向用户显示消息“”。但问题是“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';
});有人能帮我解决这个问题吗?
如果我需要澄清其他事情,请告诉我。
发布于 2014-12-04 11:54:48
数据表网站过于强调不正确的JSON。
在数据表网站上有您要查找的内容的整个部分:
http://datatables.net/faqs/ (检查服务器端处理)。我知道这不是你想要的一个完整的解决方案。
希望能帮上忙。
https://stackoverflow.com/questions/27276865
复制相似问题