DataTables Ajax加载回调

I've got a DataTable that gets its data via AJAX, and alongside the data member of the JSON object I have an additional info field that is used to determine e.g. row colors.

I'm making use of this info field fine via the ajax.reload callback, but this callback isn't called on the initial table load. I tried using the XHR handler, but that's called before the table is drawn, so I've got my hands on the JSON object but not the yet-to-be-rendered table internals.

Can anyone point me to an example of a callback function that has access to the JSON object after the initial table draw operation? I.E. much the same as ajax.reload, only without the "re"?

Thanks

You may use the drawCallback function as documented here https://datatables.net/reference/option/drawCallback

Otherwise you may use the "columnDefs" function e try to get the full row and ad to it your css. For example (not tested but it should work)

$("#myTable").DataTable({

                    "deferRender": true,
                    "columnDefs": 
                    [
                        {
                            "render": function ( data, type, row ) 
                            {
                                var tr = $(this).closest('tr');
                                //Now yuo should have the row
},
                            "className":"colonnaElencoMessaggi",
                            "name":"deviceMessages",
                            "orderable":false,
                            "targets": 2
                        }
                    ]
                });

I hope this can help

Angelo

As you mentioned in response to Angelo's answer, use the initComplete option.

$('#example').dataTable( {
  "initComplete": function(settings, json) {
    var info = json.info;
    // do whatever with info here...
  }
} );