Datatable Stopped Getting Ajax Serverside Data
Datatable Stopped Getting Ajax Serverside Data
While I am quite sure that nothing changed in our scripts overnight, I find that the script that calls the data into the datatable for editing has stopped returning any data today... no errors (despite error reporting being enabled) - but this only happens when the JS calls for the data.
If I visit the URL that the JS ajax calls, I get the expected data in my browser (as JSON)
However, when the datatable calls the same URL, it gets an empty response... (XHR failed
net::ERR_EMPTY_RESPONSE) no idea what has changed that would cause this but is happening on all my datatables now even on different websites hosted on the same server... leads me to believe that something in the server's environment may have changed? No idea what to look for or why only this AJAX stopped working. My old datatables (pre v10) all have their ajax requests working fine so it must have something to do with the new framework. I am stumped.
var table = $('#table').DataTable( {
dom: "Bftrlip",
ajax: {
url: "ajax/subscribers.php",
type: "POST"
},
responsive: false,
serverSide: true,
processing: true,
columns: [
{
data: null,
defaultContent: '',
className: 'select-checkbox',
orderable: false
},
{ data: "type" },
{ data: "firstname" },
{ data: "lastname" },
{ data: "company" },
{ data: "address1" },
{ data: "city" },
{ data: "provstate" },
{ data: "country" },
{ data: "postal" },
{ data: "phone" },
{ data: "email" },
{ data: "source" },
{ data: "campaign" },
{ data: "startdate" },
{ data: "renewdate" },
{ data: "created" },
{ data: "modified" }
],
initComplete: function ( settings, json ) {
// Populate the site select list with the data available in the
// database on load
editor.field( 'provstate' ).update( json.provstates );
editor.field( 'country' ).update( json.countries );
},
order: [ 16, 'desc' ],
lengthMenu: [ [10, 25, 50, 100], [10, 25, 50, 100] ],
select: {
style: 'os',
selector: 'td:first-child'
},
buttons: [
{ extend: "create", editor: editor },
{ extend: "edit", editor: editor },
{ extend: "remove", editor: editor },
'colvis'
],
columnDefs: [
{ targets: [10,11,12,13,14,15,17], visible: false },
{ targets: [0], searchable: false }
]
} );
Answers
We'd really need a link to the page to be able to help debug it. What is the Ajax response from the server?
Allan
The response is empty when called from the JS... the response is the data set in JSON when loaded via URL... If I comment out the
then I get the expected errors in the response for trying to declare the namespaces etc that follow.. so something in the library is choking up now when called from JS but working fine when called from the browser... same domain...
I can give you access to the script in question but since the issue is on ALL our datatables that use the v10 / editor it is not really this one script. I would need to provide that to you privately and not on this forum.
The same problem is happening on another website, on the same server, but it has its own copy of the code and is not sharing the one in question where I first found the issue today. I went to that site and found that the problem is happening there too so the issue is in the framework on my server which makes this even more perplexing since we have not changed anything on the server that I know of and error reporting on datatables shows nothing...
Can I force some debugging of DT?
Could you PM me the access details (by clicking on my name above and then "Send message") please?
Thanks,
Allan
Oh - it would also be worth checking the server's error logs.
If you haven't changed anything in the server-side, what was it you changed on the client-side? Or is it only the data that was changed?
Allan