如何在Ajax Loaded Datatable中使用回调函数?

时间:2013-05-10 05:19:30

标签: jquery callback jquery-datatables

$(document).ready(function() {
    $('#example').dataTable( {
        "bProcessing": true,
        "sAjaxSource": '../ajax/sources/arrays.txt'
    } );
} );

在上面的示例中,当sAjaxSource将数据加载到datatable中时,我想要一个在数据加载后调用的回调函数,这样做的正确方法是什么。

以上给出的解决方案并不能解决我的问题。我不想对数据表中的数据做任何事情,我只想等到数据加载完毕,然后使用该数据更新我的DOM上的另一个div。

2 个答案:

答案 0 :(得分:4)

以下是从服务器回调函数进行数据加载的示例。您也可以使用相同的功能修改数据。

$(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
      } );
    }
  } );
} );

在此处回拨函数:Datatable Callback functions

答案 1 :(得分:0)

您可以使用“fnServerData”:

$(document).ready(function() {
    $('#example').dataTable( {
        ........
        "fnServerData": function ( sSource, aoData, fnCallback ) {

            $.getJSON( sSource, aoData, function (json) { 

            fnCallback(json)
        } );
        }
    } );
} );

SEE HERE