首页 > 解决方案 > 为 ajax 响应自定义 DataTables 分页

问题描述

嗨,有一个用 Laravel 制作的 api。此 api 将返回数据的分页记录。所以它将包括数据、计数、总计、hasMorePages 和 currentPage。我回来了

在此处输入图像描述

如何自定义 DataTable 中的分页链接?另外,我想放一个回调 ajax 函数来获取下一页。我检查了文档https://datatables.net/reference/option/serverSide

但我找不到符合我要求的东西。这是我的javascript:

$("#search_games").click(function(){
var from = $("#from_date").val();
var to = $("#to_date").val();
console.log(from);
console.log(to);

$.post("/api/v1/get_games_result", { from: from, to: to }, function (data) {
    if ( ! $.fn.DataTable.isDataTable( '#example' ) ) {
        var t = $('#example').DataTable();
        t.clear().draw();
        var count = data.count;
        var currentPage = data.currentPage;
        var hasMorePages = data.hasMorePages;
        var total = data.total;
        var records = data.data;
        console.log(records.length);

        $.each(records, function (key, value) {
            var game_data = value.game_data;

            t.row.add( [
                game_data.game_id,
                game_data.game_date+" "+game_data.game_time,
                game_data.game_closing
            ] ).draw( false );

        });
    }
    var info = t.page.info();
    console.log(data);
});

});

我想做一个功能,当用户单击分页页面按钮时,我将请求下一页:

在此处输入图像描述

标签: javascriptjquerydatatablespagination

解决方案


我认为您获得了 Next 链接的 ID。 在此处输入图像描述

然后在 IF 子句中添加点击事件:

if ( ! $.fn.DataTable.isDataTable( '#example' ) ) {
    <....>
    $('#ID of Next link').click(function() {
      Repost JSON Code here;
    });
}

推荐阅读