使用追加

时间:2017-03-31 09:39:36

标签: javascript jquery datatables

我有一个问题需要解决。使用.append()我会添加具有输入字段的新行。但问题是,在追加新行之后,没有方法可以对它们起作用。没有搜索,响应按钮等方法。

我尝试了很多,但我无法弄明白......点击一个按钮后,新的行被添加到#table。

var poAddRowTable = $('#table').DataTable();
$('button').on('click', function () {
    addRowFunc(true)
});

addRowFunc = function () {
    var previousRow = $('#table tr:last');
    var newRow = $(previousRow).clone(true, true);

    $('#table tbody').append(newRow);
    $("html, body").scrollTop($(document).height());
}

2 个答案:

答案 0 :(得分:2)

您应该考虑使用DataTable.row.add()向数据表添加新行 你的addRowFunc应该像这样更新

addRowFunc = function () {

    // Clone data from last row
    var lastRow = $('#table tr:last');
    var newRowdata = [];
    $('#table tr:last').find('td').each(function() {
        newRowdata.push($(this).text());
    }); 

    // Add new row to table
    poAddRowTable.row.add(newRowdata).draw();

    $("html, body").scrollTop($(document).height());
}

答案 1 :(得分:0)

我想你必须在追加后刷新你的桌子,以下链接可以提供帮助:

How to refresh a simple Datatables table when adding new rows with jQuery