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

360
Views
jQuery: handle errors in getJSON()?

How do I handle 500 errors when using jQuery's getJSON?

There have been a couple of questions about error handling with getJSON() and JSONP, but I'm not working with JSONP, just ordinary JSON.

Another answer suggests using .ajaxSetup() before calling getJSON(), so I tried this:

$.ajaxSetup({
  "error":function() {   
    alert('Error!');
}});
$.getJSON('/book_results/', function(data) { # etc

But I find that the alert always triggers, even when the result is well-formed.

Any ideas?

over 4 years ago · Santiago Trujillo
3 answers
Answer question

0

The getJSON method does not natively return errors but you could dive into the xhr object that is returned as a parameter in the callback.

The getJSON method is a shorthand function for jQuery.ajax. Using jQuery.ajax you can easily achieve error handling:

  $.ajax({
    url: 'http://127.0.0.1/path/application.json',
    dataType: 'json',
    success: function( data ) {
      alert( "SUCCESS:  " + data );
    },
    error: function( data ) {
      alert( "ERROR:  " + data );
    }
  });
over 4 years ago · Santiago Trujillo Report

0

If you are using the jquery version 1.5 or higher you can use the new methods .success(function), .error(function) and .complete(function)

Example from http://api.jquery.com/jQuery.get/

// Assign handlers immediately after making the request,
// and remember the jqxhr object for this request
var jqxhr = $.get("example.php", function() {
  alert("success");
})
.success(function() { alert("second success"); })
.error(function() { alert("error"); })
.complete(function() { alert("complete"); });

// perform other work here ...

// Set another completion function for the request above
jqxhr.complete(function(){ alert("second complete"); });

Works perfect for me. I hope this helps

over 4 years ago · Santiago Trujillo Report

0

you can see it on jquery api getJSON: http://api.jquery.com/jQuery.getJSON/

$.getJSON(url).done(function(data){
   $("#content").append(data.info);
})
.fail(function(jqxhr){
   alert(jqxhr.responseText);
});

//jquery1.5+ the fail callback will trigger when text is not the correct json string or any other fail solutions

over 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!