【问题标题】:Getting datatables content via ajax通过ajax获取数据表内容
【发布时间】:2012-03-04 00:53:16
【问题描述】:

目前我正在使用 PHP 生成基本表

        <table id="list" class="display">   
            <thead>
                <tr id="hdr">
                    <th><input type="checkbox" id="check_all"/>  ID</th>
                    <th>Ref. No</th>
                    <th>Color</th>
                    <th>Size</th>
                    <th>Quantity</th>
                    <th>Stack NO</th>
                    <th>Price</th> 
                    <th>Add Date</th>

                </tr>
            </thead>
            <tbody>
                <?php
                $result = $db->query("SELECT * FROM  `items` ORDER BY id DESC");
                if ($result->num_rows > 0) {

                    while ($row = $result->fetch_object()) {
                        echo '<tr url="?page=item&id=' . $row->id . '">
<td class="item_id"><input type="checkbox" name="checkbox[]" method="post" value="' . $row->id . '" class="checkbox"/>    ' . $row->id . '</td>
<td> ' . $row->refno . '</td>
<td style="text-align:center">' . $row->color . '</td>
<td style="text-align:center">' . $row->size . '</td>
<td style="text-align:center" id="qt">' . trim($row->qt) . '</td>
<td style="text-align:center">' . $row->stackno . '</td>
<td style="text-align:center">' . $row->price . '</td>
<td>' . date('d.m.Y', strtotime($row->add_date)) . '</td>
</tr>';
                    }
                }
                ?>
            </tbody>
        </table>

然后像这样将数据表应用到这个中

 oTable= $('#list').dataTable( {       
        "bJQueryUI": true, 
        "iDisplayLength": 25,
        "aaSorting": [],
        "aoColumns": [ 
        {
            "bSortable": false
        },
        null, null, null,null,null, null, null
        ]    
    } ).columnFilter({
        sPlaceHolder: "head:before",
        aoColumns: [    null, null, null,null,null, null, null,
        {
            type: "date-range"
        }
        ]

    });

有很大的问题:

目前我的表有大约 2000 行。生成和加载整个表需要很长时间。 (起初它生成然后应用数据表)如何修改此脚本以通过 ajax 逐页获取内容?

【问题讨论】:

    标签: php ajax jquery datatable


    【解决方案1】:

    datatables API 中有完整记录的方法和示例,用于将 json 数据用于使用本地或服务器源的动态表

    连下载包都包含这些例子

    【讨论】:

    • 同意;所有的例子都在那里。我的第一个 DataTables 项目使用了服务器端,我从没想过它是隐藏的;我找了它,它就在那里:datatables.net/usage/server-side
    【解决方案2】:

    看来您需要利用分页。 dataTables 的quick peak at the documentation 表明它为此提供了继承支持。

    有一个功能齐全的示例向您展示了它们是如何实现分页的,可以是found here。

    祝你好运。

    【讨论】:

    • 这不仅仅是分页,而是整个服务器端功能。沉迷于分页本身的细节将错过服务器端处理所需的所有其他内容。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-10
    • 1970-01-01
    • 1970-01-01
    • 2017-02-25
    • 2014-01-05
    相关资源
    最近更新 更多