ServerSide ajax请求在一列上使用DataTable multifilter

时间:2016-03-23 14:11:42

标签: jquery ajax datatables

我有一个像这样的DataTable创建:

var ticketDataTable = $("#ticketDataTable").DataTable({
        serverSide: true,
        ajax: {
            url: ajaxUrl,
            type: "POST",
            data: function(data) {
                data.ticketStatusFilter = ketStatusCheckboxes.filter(':checked')
                    .map(function() { return this.value; }).get()
                    .join(';')
            }
        },
        columns: [
            { 
                 name: "ticket.ticketNumber",
                 data: "0.ticketNumber" 
            },
            { },
            { },
            { },
            { },
            { },
            { },
            { },
            { },
            { },
            { },        
            { },
            { },
            { },
            { },
            { }
        ],
        bSortCellsTop: true,
        dom: 'rt<lp>',
        order: [[2, "desc"]]    // Sort by descending date
    });

我使用SumoSelect创建一个带有复选框的下拉列表,以实现一个多重过滤器。

$("table#ticketDataTable thead tr th#multiSelectFilter").find("select").SumoSelect({ selectAll: true });

我需要在我的第5列上做一个multifilter,但由于服务器端参数(true)我不知道怎么做。我无法改变它。

如果你有想法解决我的问题。谢谢!

1 个答案:

答案 0 :(得分:0)

我找到了解决问题的方法。 我在我的ajax请求中添加了新数据。我在服务器端使用它来完成我的请求。然后我每次点击我的过滤器更改数据,然后重新启动请求。

工作正常!