fnServerData is called by events not related to the DataTable.

fnServerData is called by events not related to the DataTable.

rstadlerrstadler Posts: 5Questions: 0Answers: 0
edited February 2014 in DataTables 1.8
My dataTable is using ServerSide processing. The table is located in a OWF Widget in the OWF Framework, where it is in the 2nd of 3 tabs.
The problem is, when I resize the the OWF WIdget frame, fnServerData gets called. WHen I switch tabs, fnServerData gets called.
The worst of this is then when switching tabs and coming back to the tab where my dataTable resides, the table will no longer re-render to
reflect the contents received from the server.

var tableOptions =
"aoColumnDefs": sseItsmScope.columns,
"aaSorting": [[ 0, "desc" ]],
"bDeferRender": false,
"bInfo": true,
"bSortClasses": false,
"bJQueryUI": true,
"iDisplayLength": 10,
"bAutoWidth": false,
"bStateSave": false,
"sPaginationType": "full_numbers",
"cache": false,

"bProcessing": true,
"bServerSide": true,
"sAjaxSource": url,

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

// Fix for [2] problem issues which call fnServerData().
// -- Clicking TextExpand More/Less
// -- Clicking on another widget tab
if (( sseItsmScope.checkStackTrace ( "cybersa.TextExpand" ) == true ) ||
( scriptScope.tabs.isOpen ( scriptScope.ITSM_TAB ) == false))
// Every firing of this function requires incrementing sEcho.
sseItsmScope.serverFetchCount++; // sEcho needs help !!
return ( false );
aoData[0].value = sseItsmScope.serverFetchCount; // sEcho needs help !!

"dataType": 'json',
"contentType": "text/plain",
"type": "PUT",
"url": sSource,
"data": JSON.stringify(aoData),

"success": function (json)
/.. do some stuff..
json.aaData = result;
json.sEcho = sseItsmScope.serverFetchCount++; // sEcho needs help !!

}); // $.ajax({

} // if()
} // "fnServerData": function
}; // var tableOptions ...

sseItsmScope.dataTable =
$( "#" + sseItsmScope.tableId ).dataTable ( tableOptions );
$( "#" + sseItsmScope.tableId ).dataTable ( tableOptions );


  • allanallan Posts: 54,716Questions: 1Answers: 8,560 Site admin
    fnServerData will be called whenever DataTables does a draw in server-side processing mode. We'd need a link to the page so I can investigate why it is being called.

  • rstadlerrstadler Posts: 5Questions: 0Answers: 0
    fnDraw is the event that makes all this happen. So, that explains it, but I need a work-around.
    I cannot point you to my link because it is govt/non-public.
  • rstadlerrstadler Posts: 5Questions: 0Answers: 0
    dataTable.fnAdjustColumnSizing() was the total cause. When I stopped this call (since this function calls fnDraw() ). then all the erroneous calls to "fnServerData" stopped.
This discussion has been closed.