2014-02-10 140 views
0

我使用DataTables一切工作正常,但所有的记录不会显示输出:为什么不能显示所有记录?

enter image description here

这里是我的代码:

 oTable = $('#permissions').dataTable({ 
      //"sScrollY" : "425px", # I added this 
      "sAjaxSource": url, 
      "bServerSide": true, 
      //"sDom": "t", 
      "sDom": "frtiS", # I added this 
      //"sPaginationType": "bootstrap", 
      "bProcessing" : false, 
      //"aoColumnDefs": [{ "bSortable": false, "aTargets": [ 2,3 ] }], 
      "aoColumnDefs": [ { 
       "aTargets": [ 1 ], "sWidth": "30px", 
       "mRender": function (data, type, full) { 
       return format_checkbox('admin', data, full);} 
      },{ 
       "aTargets": [ 2 ], "sWidth": "30px", 
       "mRender": function (data, type, full) { 
       return format_checkbox('consignment', data, full);} 
      },{ 
       "aTargets": [ 3 ], "sWidth": "30px", 
       "mRender": function (data, type, full) { 
       return format_checkbox('team', data, full);} 
      },{ 
       "aTargets": [ 4 ], "sWidth": "30px", 
       "mRender": function (data, type, full) { 
       return format_checkbox('agent', data, full);} 
      },{ 
       "aTargets": [ 5 ], "sWidth": "30px", 
       "mRender": function (data, type, full) { 
       return format_checkbox('report', data, full);} 
      },{ 
       "aTargets": [ 6 ], 
       "mRender": function (data, type, full) { 
       return '<button data-orgid="'+data+'" class="btn btn-danger delbutton">Delete</button>'; 
       } 
      } ], 
      "bDeferRender": true, 
      "bStateSave": true,    
      "fnDrawCallback": function(oSettings) { 
       $('.switch').bootstrapSwitch(); 
       $('.switch').on('switch-change', function (e, data) { 
        var ds = $(data.el)[0].dataset, value = data.value; 
        var ndata = {orgid:ds["orgid"]} 
        ndata[ds["permission"]] = value ? "on" : "off"; 
        $.post(post_url, JSON.stringify(ndata)).done(function(data) { 
         oTable.fnStandingRedraw(); 
        });      
       }); 
       $('#permissions button').click(function(){ 
        $.post(del_url, JSON.stringify(this.dataset["orgid"])).done(function(data) { 
         oTable.fnStandingRedraw(); 
        }); 
       }); 

      } 
     }); 

我是比较新的DataTables。这不是我的代码,因为我只是修复了这个bug ......我不明白为什么它没有显示所有记录?我玩过一段时间...我尝试将bProcessing更改为true,但它仍然无效。即使当我使用滚轮,它不会加载最后2条记录...

我觉得答案/解决方案很简单。 我该如何解决这个问题?

+0

是你,包括初始化的DataTable对象之前所引导分页代码的数据表? –

回答

1

这是因为默认页面大小为10。您可以通过设置iDisplayLength属性来更改它。

oTable = $('#permissions').dataTable({ 
    "iDisplayLength": 50, 
    // rest of your code... 

如果你想完全禁用分页,我真的不建议,您可以使用此:

"bPaginate": false 
+0

感谢您的回答...'。它不起作用..它现在不显示任何记录... – Renier

+0

@Chirag,我在晚上留下了这个“bug” '“bPaginate”:false'),当我现在启动项目时,它显示所有记录......奇怪的是对的?至少我发现它很奇怪......我会接受这个答案,因为@Rory是第一个给我答案的人。 @Chirag感谢您的帮助......您提供的参考资料非常有用! – Renier

1
oTable = $('#permissions').dataTable({ 
    "iDisplayLength": 50, 
    "bPaginate": false 
}); 
+0

感谢您的回复...这不起作用...如果我尝试实施它,它返回0条记录 – Renier

+0

我已更新我的答案,请检查并让我知道工作? –

+0

它仍然返回0个记录':|'可能是什么问题? – Renier