jQuery Datatable获取自定义ajax参数

时间:2017-05-25 02:23:25

标签: datatables

我有我的jQuery Datatable,我在fnServerData函数中添加了一些自定义ajax参数:

"fnServerData": function(sSource, aoData, fnCallback, oSettings) {

    aoData.push({
        name: "selection",
        value: 123456
    });

    oSettings.jqXHR = $.ajax({
        "dataType": "json",
        "type": "POST",
        "url": sSource,
        "data": aoData,
        "success": function(data) {

            if (data.selection === false) {
                hideWaiting();
            }

            fnCallback(data);

        },
        "error": function(jqXHR, txtStatus, errorThrown) {
            console.log(txtStatus, errorThrown);
        }
    });
},

在其他功能中,我需要获得所有ajax参数:

var ajaxParams = table.ajax.params();

我可以到达所有datatable ajax参数,但我找不到我的selection自定义参数。

enter image description here

  

有任何线索吗?

1 个答案:

答案 0 :(得分:0)

您正在执行自己的Ajax请求,因此我假设jQuery DataTables不知道您将aoData数组传递给您自己的函数后所做的更改。

最简单的解决方法是将aoData存储在全局变量中,并在需要最后一个请求参数时访问它。

否则,您可能需要使用ajaxajax.data初始化选项让jQuery DataTables自己处理Ajax请求。这样,它就会知道ajax.data选项定义的函数中添加的自定义参数。