使用DataTables替换表体

时间:2016-11-02 10:40:39

标签: javascript jquery ajax datatables

我刚开始使用DataTables而且我一直在努力改变我的DataTable的主体。

我一直在查看API并搜索论坛,但我找不到任何内容。

API有一个名为body()的函数,用于获取表体。如果有设置它的功能,那将是太棒了。

想象一下,我通过AJAX获得了一个全新的表体,我想要删除旧体并改为使用它。

我以前是通过jQuery函数html()来做的,但看起来情况有所不同。

1 个答案:

答案 0 :(得分:5)

如果您需要替换所有行,我建议您使用clear()rows.add()的组合。

例如:

var table = $('#example').DataTable();

table.clear();
table.rows.add( [ 
    {
        "name":       "Tiger Nixon",
        "position":   "System Architect",
        "salary":     "$3,120",
        "start_date": "2011/04/25",
        "office":     "Edinburgh",
        "extn":       "5421"
    }, {
        "name": "Garrett Winters",
        "position": "Director",
        "salary": "$5,300",
        "start_date": "2011/07/25",
        "office": "Edinburgh",
        "extn": "8422"
    } 
] );

否则,如果您要将表格替换为HTML内容,则需要使用destroy()销毁该表格,替换tbody,然后使用DataTable()重新初始化该表格。

例如:

var table = $('#example').DataTable();

table.destroy();

$('#example').html('<thead><tr><th></th></tr></thead><tbody></tbody>');

table = $('#example').DataTable();