我如何定制jquery ajax请求的数据表插件?

时间:2012-11-29 05:55:02

标签: jquery datatables

我们可以使用来自服务器的datatable插件请求数据,如下所示:

$('#example').dataTable( {
    "bProcessing": true,
    "bServerSide": true,
    "sAjaxSource": "../server_side/scripts/server_processing.php"
} );

我们将服务器URL写为“sAjaxSource”:“.. / server_side / scripts / server_processing.php”。 但是如果我想要自定义请求只是这样的异步函数:

$('#example').dataTable( {
    "bProcessing": true,
    "bServerSide": true,
    "requestFunction": function(params, callback){
          callback([....]);
     }
} );

我该怎么做?

1 个答案:

答案 0 :(得分:1)

尝试使用:fnServerData

此参数允许您覆盖从服务器($.getJSON)获取数据的默认函数,以便更适合您的应用程序。例如,您可以使用POST数据,或从Gears或AIR数据库中提取信息。

$(document).ready( function() {
  $('#example').dataTable( {
    "bProcessing": true,
    "bServerSide": true,
    "sAjaxSource": "xhr.php",
    "fnServerData": function ( sSource, aoData, fnCallback, oSettings ) {
      oSettings.jqXHR = $.ajax( {
        "dataType": 'json',
        "type": "POST",
        "url": sSource,
        "data": aoData,
        "success": fnCallback
      } );
    }
  } );
} );