动态更新jQuery数据表选项

时间:2017-02-09 06:58:21

标签: jquery datatables

我在jQuery数据表上创建了几个选项,如下所示。

var _myTable = $('#myTable').DataTable({
            "bProcessing": true,
            "aaData": arrayList,
            "aoColumns":columnArr,
            "aaSorting": [[0,'desc']]
        });

创建后,我需要使用变量 _myTable fnRowCallback 方法添加到该表中。 有没有办法将我的fnRowCallback添加到现有表?我不想用fnRowCallback选项重新创建该数据表。我想重新使用 _myTable

1 个答案:

答案 0 :(得分:1)

以下将适用于数据表版本1.9。它在1.10中发生了很大的变化,可能不适用于这个版本。感谢。

试试这个:

var oSettings = _myTable.fnSettings();
oSettings.aoRowCallback.push( {
    "fn": function (nRow, aData, iDisplayIndex, iDisplayIndexFull) {
       $(nRow).on('dblclick', function() { alert('sdagdsa'); });
    },
});
_myTable.fnDraw();

对于1.10,尝试这样的事情:

var oTable = $('#table').dataTable(); 

var oldoptions = oTable.fnSettings(); 

var newoptions = $.extend(oldoptions, { 
fnRowCallback: function(nRow, aData, iDisplayIndex, iDisplayIndexFull) { 
    console.warn("working"); 
} 
}) 

oTable.fnDestroy(); 

$('#table').dataTable(newoptions);