首页 > 解决方案 > JQuery 数据表:数据表重新加载时更新请求/ PostData

问题描述

我有一个在 JS 模块中定义的 JQuery 数据表。而且,在其他地方,我试图在 Datatable 的 ID 选择器的帮助下重新加载它。在这里,我想传入我遇到问题的新请求发布数据。

我的尝试:

在模块 A 中:

$(selectors.Datatable)
    .DataTable({
        bProcessing: true,
        serverSide: true,
        ajax: {
            data: initialPostData,
            url: urls.read,
            method: 'POST'
        },
        columns: [...],
        autoWidth: false,
        searchDelay: 500
    });

在模块 B 中:

var newPostData = [...];
var dataTableWidget = $(selectors.datatableSelector).DataTable();
dataTableWidget.ajax.params(newPostData);
dataTableWidget.ajax.reload();

我期待dataTableWidget.ajax.params(newPostData);应该在 ajax 请求中发布新数据。但事实并非如此。

更新

params不是要在这里提供帮助的人。从文档:

获取上次Ajax请求中DataTables提交给服务器的数据

标签: jquerydatatables

解决方案


After looking into the documentation of JQuery Datatable, I found this as a workaround.

dataTableWidget.settings()[0].ajax.data = newPostData;

dataTableWidget.ajax.reload();

推荐阅读