DataTable:如何加快页面加载?

时间:2015-03-04 13:37:25

标签: php jquery mysql datatables jquery-datatables

我的数据库中有 20,000 行,我使用DataTable加载所有这些数据。

  • DataTable正在加载我的所有数据。
  • DataTable可以处理少量数据(如100或更低),但在我的情况下,我的页面需要 3 分钟来加载页面。很坏 !

使用 DataTable 提高加载速度的最有效方法是什么?


更新

这是我的表

<table id="inventory_exact"> ...

这是我的设置

  // Setting to Inventory Table 
  $('#inventory_exact').dataTable({

    "lengthMenu": [ 10 ] ,
    "bLengthChange": false,
    "searchHighlight": true,
    "bInfo" : false

  });

更新2: - 服务器端

@niyou:我使用PHP Laravel,所以我查询我的数据,并显示这样做

            @foreach ( Inventory::all() as $inventory)
             <tr>
                <td>{{ $inventory->sku }} </td>
                <td>{{ $inventory->description }} </td>
                <td>${{ $inventory->price }} </td>
                <td>{{ $inventory->stock }} </td>
             </tr>
            @endforeach

1 个答案:

答案 0 :(得分:0)

当您处理客户端大型数据集(大型定义为超过1000)时,您可能希望切换到数据表数据的服务器端数据实现

使用最新的1.10语法,它看起来像这样

table = $('#example').DataTable( {
    serverSide: true,
    ajax: {
      url:"index.cfm/observers/json",
      },
  });

其中url返回一个具有draw,totalrecordcount,totalfilteredcount和data的json对象

我已添加

文档的链接

Datatables Server-Side Documentation

PHP example script to generate JSON needed for datatables on Github using SSP.class

PHP script to generate JSON for datatables written spagetti style (if you cant use SSP or need to use older datatables)