我正在使用插件jQuery datatables并加载我在页面底部的DOM中加载的数据,并以这种方式启动插件:

var myData = [
    {
        "id": 1,
        "first_name": "John",
        "last_name": "Doe"
    }
];

$('#table').dataTable({
    data: myData
        columns: [
        { data: 'id' },
        { data: 'first_name' },
        { data: 'last_name' }
    ]
});

现在在执行一些操作之后,我想使用ajax获取新数据(但不是在datatables中构建ajax选项-别误会!)并用这些数据更新表格.如何使用datatables API实现这一点?文档非常混乱,我找不到解决方案.任何帮助都将不胜感激.谢谢

推荐答案

SOLUTION: (Notice: this solution is for datatables version 1.10.4 (at the moment) not legacy version).

CLARIFICATION Per the API documentation (1.10.15), the API can be accessed three ways:

  1. DataTables的现代定义(大小写):

    var datatable = $( selector ).DataTable();

  2. 数据表的传统定义(小写):

    var datatable = $( selector ).dataTable().api();

  3. 使用new语法.

    var datatable = new $.fn.dataTable.Api( selector );

然后像这样加载数据:

$.get('myUrl', function(newDataArray) {
    datatable.clear();
    datatable.rows.add(newDataArray);
    datatable.draw();
});

使用draw(false)在数据更新后保持在同一页面上.

API references:

https://datatables.net/reference/api/clear()

https://datatables.net/reference/api/rows.add()

https://datatables.net/reference/api/draw()

Jquery相关问答推荐

这是否会导致内存泄漏?

JQuery UI-AutoComplete未显示下拉菜单

我在自定义 WordPress 插件中使用 ajax 时收到错误请求

如何在for循环期间上传文件

$ 不是函数 - jQuery 错误

jQueryUI 模态对话框不显示关闭按钮 (x)

动态加载 css 样式表在 IE 上不起作用

jQuery/JavaScript 碰撞检测

jquery获取帖子操作网址

jquery 从特定表单获取所有输入

jQuery Force 为 iframe 设置 src 属性

通过 AJAX 和 jQuery 使用 HTML5 文件上传

Bootstrap 折叠动画不流畅

触发下拉更改事件

带有 jQ​​uery 的饼图

更改 Eclipse 设置以忽略特定文件上的错误

如何使用 JQuery 获取 GET 和 POST 变量?

使用 jQuery 的 removeAttr 删除多个属性

textarea 的 val() 与 text()

如何使用 jQuery 的 form.serialize 但排除空字段