2

I've currently started on a project including AJAX, and I ran into a problem. When using Microsoft Edge (and Internet Explorer) it won't update data, unless I close the entire page and open it again, or if I open my PHP file, from which I send data through AJAX.

Does anyone no how to solve this issue using PHP and/or Javascript?

Thanks in advance

Web_Designer
  • 64,966
  • 87
  • 197
  • 254

2 Answers2

6

A "quick fix" would be to use the cache: false option of the $.ajax method, but this really isn't the right way to solve this problem if you have control of the server. Instead, you shoudl have php return a no-cache header on services you don't want cached, and a cache header on services you do want cached.

header("Cache-Control: no-cache, no-store, must-revalidate"); // HTTP 1.1.
header("Pragma: no-cache"); // HTTP 1.0.
header("Expires: 0"); // Proxies.

The above code was taken from BalusC's answer over here: How to control web page caching, across all browsers?

Otherwise, you should have an htaccess that specifies which files should be cached such as static assets that don't change often (.html, .js, .css, etc)

Community
  • 1
  • 1
Kevin B
  • 92,700
  • 15
  • 158
  • 170
-1

You can check some of the answers here. I don't think the browser will allow you to clear the cache directly through javascript. There are workarounds that may be able to solve your problem, though.

Community
  • 1
  • 1