Datatable Legacy - 更新已存在的页面总数

时间:2015-11-24 17:23:30

标签: jquery datatable

我正在使用数据表遗留来生成我的动态表。

但在我的sql中我使用偏移行每次只带100行。

我尝试使用分页来获取页面的数量和下拉列表来获取 要在页面上显示的行的值。

我的问题是,当我通过ajax获取数据时,我需要更新页面的数量 分页。

例如。

Total rows 57, 
Showing rows 10, 
Total pages 6,

我找不到更新此信息的原因。

对此有任何经验。

jquery代码:

$("#status").DataTable({
                            "bPaginate": true,
                            "sPaginationType": "full_numbers",
                            "bLengthChange": true,
                            "aLengthMenu": [[5, 10, 15, 20], [5, 10, 15, 20]],
                            "iDisplayLength": 5,
                            "bFilter": true,
                            "bSort": true,
                            "aaSorting": [],
                            "bInfo": true,
                            "bAutoWidth": false,
                            "oLanguage": {
                                "sSearch": "Pesquisar:",
                                "oPaginate":
                                    {
                                        "sFirst": "<<",
                                        "sPrevious": "<",
                                        "sNext": ">",
                                        "sLast": ">>",

                                    },
                            }
                        })

1 个答案:

答案 0 :(得分:1)

我不确定您是否要求将分页参数发送到服务器,或者将分页记录从服务器返回到客户方。

如果它是前者,那么您需要使用iDisplayLengthiDisplayStart,它们会在请求中传递给服务器。您不会说出您正在使用的服务器端语言,但您需要从查询字符串中获取这些值并在SQL查询中使用它们,例如:

Request.QueryString["iDisplayStart"]

如果您要求从服务器返回分页数量,那么您将在json中返回iTotalRecordsiTotalDisplayRecords的值:

return Json(new
  {
       param.sEcho,
       iTotalRecords = rowCount,
       iTotalDisplayRecords = rowCount,
       aaData = result
  }, JsonRequestBehavior.AllowGet);

有关在数据表请求和响应中传递的参数的信息,请参阅here