【问题标题】:How to replace the Data Array in jQuery DataTables如何替换 jQuery DataTables 中的数据数组
【发布时间】:2014-07-22 07:57:41
【问题描述】:

我有一个最初由 JSON 数组填充的 DataTables 表(使用 ASP.NET 直接写入 HTML)。现在我想用 Ajax 刷新这些数据,但根本不会添加数据。我想使用我自己的方法,而不是 DataTables 的内部 Ajax 方法。 (使用 DataTables 1.10.0)。

$.getJSON("?ajax=1", null, function(json, status, xhr) {
    var table = $("#" + proTableId).DataTable();

    oSettings = table.settings();
    //table.clear();
    table.rows().remove();

    var data = table.data();
    for (var i = 0; i < json.length; i++)
    {
        data.push(json[i]);
    }
    table.draw();
});

JSON 结果是正确的,但在此调用之后,DataTable 始终为空。如何替换 DataTables 对象中的数据并最好保持排序和过滤?

【问题讨论】:

    标签: jquery ajax json datatables


    【解决方案1】:

    要向数据表中添加数据,你必须访问数据表对象的属性行,然后调用add方法。最后,您通过调用 draw 方法更新此表。

    Data Table documentation 上可以看到。你必须这样做:

    for(var i= 0; i < json.length; i++){
        table.row.add([
           json[i].firstProperty,
           json[i].secondProperty
        ]).draw();
    }
    

    【讨论】:

    • 这行得通,但我不得不稍微改变一下table.row.add(json[i]);
    猜你喜欢
    • 1970-01-01
    • 2020-06-30
    • 1970-01-01
    • 2018-04-30
    • 1970-01-01
    • 2011-11-05
    • 1970-01-01
    • 1970-01-01
    • 2017-01-10
    相关资源
    最近更新 更多