【问题标题】:How to implement Ajax call in Datatables server side processing如何在 Datatables 服务器端处理中实现 Ajax 调用
【发布时间】:2020-02-03 11:54:54
【问题描述】:

我在服务器端有 20,000 多个数据,我必须根据他们的性别在数据表中进行绘图。 我有三个类别

  1. 全部显示列表中的所有数据
  2. 妇女+儿童数据列表
  3. 男人资料列表

第一次加载通过选择单选按钮一切正常,在某些情况下,我得到了所有以前的数据列表,但计数仍然显示

代码:

function load_data(preferredGender) {
   $("#user_table").DataTable({
        "processing": true,
        "serverSide": true,
        "dataType": "json",
        "deferRender": true,
        "ajax": {
            "url": "<?php echo base_url(); ?>user/list_customers",
            "data": {
                preferredGender
            },
        },
        "columns": [
            {
                "data": "row"
            },
            {
                "data": "email"
            },

        ],
    });
}

【问题讨论】:

标签: php ajax datatables


【解决方案1】:
$('#table-id').DataTable({    
"processing": true, 
"serverSide": true, 
"ajax": {
    "url": "URL",
    "type": "POST",
    "data": function ( data ) {
            data.gender = $('#gender').val();

        },
    "dataSrc": function ( json ) {             
       return json.data;
   }
},
"columnDefs": [
{ 
    "targets": [ ], 
    "orderable": false, 
},
],
"fnDrawCallback": function() {          

 },
});

【讨论】:

  • 我怀疑通过在 dataSrc 上返回 Json .data 我们可以忽略列吗?
【解决方案2】:

大家好,感谢您宝贵的时间。我已经解决了这个问题

发送请求以获取每次点击数据以及响应时间和数据中的问题。

在发送之前打开 ajax 调用中止如果任何先前的请求退出并中止

beforeSend:function(){
if (userTable && userTable.hasOwnProperty('settings')) {
     userTable.settings()[0].jqXHR.abort();
    }
}

如果您对此有任何选择,请建议我

谢谢

【讨论】:

    猜你喜欢
    • 2012-07-11
    • 2021-09-21
    • 1970-01-01
    • 2021-05-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-13
    • 1970-01-01
    相关资源
    最近更新 更多