You may have come across the situation where you are making a jQuery AJAX GET request to update part of your page with changing content, but it never updates or just returns blank content.

What it actually comes down to is that the ‘Get’ call is working correctly, but Internet Explorer (IE) caches the response, so you never get the updated results from the server.

What are the options:

1. Use POST rather than GET – although this is not semantically correct, you should only POST when modifying contents on the server, technically there really is not much difference.

2. (Preferred) You can disable caching globally using $.ajaxSetup(), for example:

$.ajax

Setup({ cache: false });


This appends a timestamp to the querystring when making the request. To turn cache off for a particular $.ajax() call, set cache: false on it locally, like this:

 $.ajax({
cache: false,
//other options...
});