DataTables example Custom HTTP variables

It can often be useful to send extra information to the server when utilising DataTables' server-side processing option. This is done by using the ajax.data option which can be used in one of two different ways:

  • object - An object data to send to the server. This is useful for adding static data to the request.
  • function - A function which will manipulate the data object to send to the server, adding values as required. Using the data parameter as a function allows the additional data to evaluated and added to the request at the time the request is made.

The example below shows server-side processing being used with an extra parameter being sent to the server by using the ajax.data option as a function.

First nameLast namePositionOfficeStart dateSalary
First nameLast namePositionOfficeStart dateSalary

The Javascript shown below is used to initialise the table shown in this example:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
$(document).ready(function () {
    $('#example').DataTable({
        processing: true,
        serverSide: true,
        ajax: {
            url: 'scripts/server_processing.php',
            data: function (d) {
                d.myKey = 'myValue';
                // d.custom = $('#myInput').val();
                // etc
            },
        },
    });
});

In addition to the above code, the following Javascript library files are loaded for use in this example: