Javascript Datatable发送当前页码

Javascript Datatable发送当前页码,javascript,jquery,laravel,datatable,Javascript,Jquery,Laravel,Datatable,我一直试图通过覆盖名为pgno的变量来将当前页码发送到服务器 这是我的密码: function fill_datatable(status='',pgno='') { var pgno = 0; table = $('.tb_scoin_available').DataTable({ "processing": true, "serverSide": true, "ordering" : false, "info

我一直试图通过覆盖名为pgno的变量来将当前页码发送到服务器

这是我的密码:

function fill_datatable(status='',pgno='') 
{
    var pgno = 0;
    table = $('.tb_scoin_available').DataTable({
        "processing": true,
        "serverSide": true,
        "ordering"  : false,
        "infoCallback": function( settings, start, end, max, total, pre ) {
            var api = this.api();
            var pageInfo = api.page.info();
            pgno = pageInfo.page+1;
            return pgno;
        },
        "ajax":{
            "url": base_url+'/adminPath/management_scoin/ajaxGetScoinAvailable',
            "type": "POST",
            "data":{ _token: csrf_token, status : status,pgno : pgno}
        },
        "columnDefs": [ { orderable: false} ],
        "columns": [
            { "data": "no" },
            { "data": "created_at" },
            { "data": "serial_scoin" },
            { "data": "unit_scoin" },
            { "data": "unit_scoin_desc" },
            { "data": "unit_scoin_sc" },
            { "data": "unit_scoin_idr" },
        ],

    }); 
}
当我尝试在infoCallback上发出警报时:
alert(pgno)
变量已被覆盖,但当我尝试在后端转储请求时,pgnoPOST会给出如下空结果:


有人可以帮我吗?

您可以使用page()函数获取表格页面,而不需要整个“page.info”。最好在Datatable的API中解释:

您试图访问的方法只是获取信息,而不是设置信息。这可能就是它不起作用的原因。查看他们的文档以更好地了解他们的API:

编辑:


您可以通过简单的计算得到当前页面。由于您使用的是服务器端处理,因此您已经有了开始长度。您只需要执行start/length+1,就可以得到当前的页码。

在这里,我不知道当用户单击页码时如何使用触发器将页面传递到后端?您已经拥有了所需的数据;)Datatables为您提供了两个选项:开始和长度。有了这些,你可以这样计算当前页面:data.start/data.length+1ooh,这样我就可以通过这个公式得到后端的当前页面了?data.start/data.length+1没错,伙计。我在我的答案中添加了这一点,以便帮助其他人:)