【问题标题】:jquery datatables server side process with external form带有外部表单的jquery数据表服务器端进程
【发布时间】:2016-05-05 08:12:36
【问题描述】:

我们有超过 200 000 条记录。数据表加载时间过长。

这是我们使用的代码

$(document).ready(function() {
    var dataTable = $('#dataTables-example').DataTable( {
        responsive: true,
        "processing": true,
        "serverSide": true,
        'iDisplayLength': 25,
        "aaSorting": [[ 7, "desc" ]],
        "ajax": $.fn.dataTable.pipeline( {
            url: 'report_list_ajax.php'
        }),
        "columnDefs": [ 
            {"targets": 0, "orderable": false },
            {"targets": 4, "orderable": false },
        ]
    });
});

所以我们不需要在页面加载时加载或初始化 jquery 数据表。

只有在提交外部表单时,jquery 数据表才会初始化和执行。

即:“FROM”和“TO Date”选择并点击提交按钮,数据表将根据表单输入加载..

【问题讨论】:

  • 请修正代码后的文字。这真的很难理解。例如,“我们需要的数据表不会加载”实际上没有意义。

标签: php jquery mysql


【解决方案1】:

外部表单提交时数据表初始化并执行:

$("#external_form_id").on("submit", function(){
    //datatable initiate code...
});

根据上面的代码,数据表在外部表单触发提交之前不会启动。这就是你想要的?

【讨论】:

  • 同时我也需要发送表单输入值
  • 试试这个把你的数据解析成数据表启动代码: "sAjaxSource": //url, "sServerMethod": "POST", "fnServerParams": function (aoData) { aoData.push({ “名称”:“动作”,“价值”:“任何东西”}); },
猜你喜欢
  • 2015-09-09
  • 2011-11-20
  • 1970-01-01
  • 2013-07-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-04-01
  • 1970-01-01
相关资源
最近更新 更多