Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/89.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 奇怪的IE7$.getJSON ajax调用_Php_Jquery_Getjson - Fatal编程技术网

Php 奇怪的IE7$.getJSON ajax调用

Php 奇怪的IE7$.getJSON ajax调用,php,jquery,getjson,Php,Jquery,Getjson,我使用$.getJSON执行对最新数据库更新的ajax调用。Chrome和Firefox工作正常,但IE7在使用IE7时,服务器将响应我清除IE7缓存后的第一次更新 有什么想法吗?IE有一个坏习惯,就是缓存对AJAX调用的响应 在查询字符串中添加一个伪参数,该参数在每次进行AJAX调用时都会更改,然后您将获得新的结果 更新:如果您使用Mootools,那么您可以。寻找noCache选项。IE有缓存AJAX调用响应的坏习惯 在查询字符串中添加一个伪参数,该参数在每次进行AJAX调用时都会更改,然后

我使用$.getJSON执行对最新数据库更新的ajax调用。Chrome和Firefox工作正常,但IE7在使用IE7时,服务器将响应我清除IE7缓存后的第一次更新


有什么想法吗?

IE有一个坏习惯,就是缓存对AJAX调用的响应

在查询字符串中添加一个伪参数,该参数在每次进行AJAX调用时都会更改,然后您将获得新的结果


更新:如果您使用Mootools,那么您可以。寻找
noCache
选项。

IE有缓存AJAX调用响应的坏习惯

在查询字符串中添加一个伪参数,该参数在每次进行AJAX调用时都会更改,然后您将获得新的结果


更新:如果您使用Mootools,那么您可以。查找
noCache
选项。

可以使用$.ajax代替这些选项。。注意“cache:false”:

$.ajax({
  url: url,
  dataType: 'json',
  cache: false,
  data: data,
  success: callback
});

请参阅:

可以使用$.ajax代替这些选项。。注意“cache:false”:

$.ajax({
  url: url,
  dataType: 'json',
  cache: false,
  data: data,
  success: callback
});

请参阅:

我以前也经历过这种情况。您可能希望添加一个每次都不同的新参数。大概是这样的:

var ts = new Date().getTime(); //get the current timestamp
//add the ts as a parameter to your call along with all your other data. 

这样,每个请求都是不同的,IE不会缓存它。

我以前经历过这种情况。您可能希望添加一个每次都不同的新参数。大概是这样的:

var ts = new Date().getTime(); //get the current timestamp
//add the ts as a parameter to your call along with all your other data. 

这样,每个请求都是不同的,IE不会缓存它。

这是缓存的问题,IE会缓存您的数据,以便后面的调用不会从服务器获得结果,而是在IE缓存中

如果您将jQuery用于所有ajax,则应首先运行以下命令:

$.ajaxSetup({
  cache: false
});

如果设置为false,将强制浏览器不缓存请求的页面。

这是缓存的问题,IE在缓存中缓存数据,以便后面的调用不会从服务器获得结果,而是在IE缓存中

如果您将jQuery用于所有ajax,则应首先运行以下命令:

$.ajaxSetup({
  cache: false
});
如果设置为false,它将强制浏览器不缓存请求的页面