Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

339
Views
jQuery Datatable - Error message from ajax call
 "ajax": {
            "url": url,
            "type": "GET",
            "datatype": "json",
            "data": { id: id}
            //,
            //"success": function (data) {
            //    if (!data.data)
            //        ShowErrorMessage(data.message);
            //}
        },
        "columns": [
                { "data": "ID" },
                { "data": "Name" },
                { "data": "Time" }
        ],
        "columnDefs": [{
            "targets": 2,
            "data": "Time",
            "render": function (data) {
                return (ToJavaScriptDate(data));
            }
        }]
    });

Above the sample code, which will populate a datatable using ajax GET call. The issue here is, sometimes I will return a valid error message instead of table data from ajax response.

So when ever there is data in data.data, I need to populate the table and if data is not there, I need to populate the data.message as custom error message. Here both the calls are success calls but whether to display the table content or error message depends.

I tried "success" attribute but I am not sure how to manually bind the columns when there is data in data.data

about 4 years ago · Santiago Trujillo
1 answers
Answer question

0

The best way would be to use language.emptyTable option.

However since you want to use message from the Ajax response, there is a hacky way to do it.

var table = $('#example').DataTable({
    ajax: {
       url: 'https://api.myjson.com/bins/if7vf',
       dataSrc: function(d){
          if(d.data.length === 0){
             var settings = $('#example').DataTable().settings()[0];
             settings.oLanguage.sEmptyTable = d.message;
          }

          return d.data;
       }
    }
});

See this example for code and demonstration.

about 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!