0

有谁可以解释数据jQuery表的生命周期?

我有一个问题,在 sme 页面上我关闭数据表并再次打开(数据表重新初始化)。当打开数据表第二次过滤器停止工作。

我收到一个错误:

TypeError: oSettings is null
if ( !oSettings.oFeatures.bFilter )

我不知道如何解决这个问题。

更新 1:

var oTable;
function datatable() {
oTable = jQuery('#tabela').dataTable({
    "oLanguage": {
        "sSearch": "Search:",
        "sInfoFiltered": '' 
    },
    "bDestroy": true,
    "bStateSave": false,
    "bJQueryUI": true,
    "sPaginationType": "full_numbers",
    "aLengthMenu": [[15, 25, 50, 100, -1], [15, 25, 50, 100, "all"]],
    "iDisplayLength": -1,
    "fnRowCallback": function( nRow, aData, iDisplayIndex ) {
        $(nRow).addClass('gradeA');
        return nRow;
    }
}).columnFilter({
    aoColumns: [
        null,
        null,
        null,
        { type: "checkbox", values: ['BGD','BGDS','NS','NSS','LE','LES'] }
    ]
});
}

function datatable_delete() {
oTable.fnFilterClear(); 
oTable.fnDestroy();
}

单击某个链接时我调用的函数 datatable() 。然后,表格在同一页面上打开。在关闭按钮上,表关闭并调用 datatable_delete() 函数。我们仍然在同一页面上。当单击链接打开表格时,会出现上述问题。

4

1 回答 1

0

尝试这个

function datatable_delete() {
  oTable.fnSettings().aoRowCallback = [];
  oTable.fnSettings().aoDrawCallback= [];
  oTable.fnDestroy();
}
于 2014-09-10T13:34:22.587 回答