2017-02-21 59 views
0

我對所謂的「返回」這是我想要清除和銷燬表準備好重新使用銷燬數據表重用

我已經能夠做到這一點使用明確的數據表的按鈕()和destroy()方法取得了一些成功,但多次點擊後,它停止工作

有沒有辦法在同一張桌子上連續銷燬/重新加載?還是我吠叫錯了樹?

排序,工程的代碼是:

{ 
    text: 'Go Back', 
    action: function(e, dt, node, config) { 
      $("#table1_wrapper").swap({ 
       target: "adults", 
       speed: 1000, 
       opacity: "0.5", 
      }); 
      reportstable.clear().draw(); 
      reportstable.destroy(); 
      reportstable.dataTable(); 
     } 
} 

回答

1

我已經找到自己的答案。
以下代碼工作正常

$('#table1').dataTable({ 
    "bDestroy": true 
}); 
$('#table1').dataTable().fnDestroy(); 
$('#table1').empty(); 
0

可能你的表中可能有一些按鈕。如果是這樣的話,就會有一些問題。如果是這種情況,你可以使用它。

function destroyDatatable(table) { 
      var buttons = []; 
      $.each(table.buttons()[0].inst.s.buttons, 
       function() { 
        buttons.push(this); 
       }); 
      $.each(buttons, 
       function() { 
        table.buttons()[0].inst.remove(this.node); 
       }); 
      table.destroy(); 
     } 

我已經使用這個功能,它工作正常。