Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.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/2/ajax/6.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
Jquery AJAX:如何重定向页面,然后刷新一次_Jquery_Ajax - Fatal编程技术网

Jquery AJAX:如何重定向页面,然后刷新一次

Jquery AJAX:如何重定向页面,然后刷新一次,jquery,ajax,Jquery,Ajax,我将此代码与ajax结合使用,在编辑数据(如在论坛中编辑帖子)后,从A页重定向到B页。 但当B页完成加载后,B页在我编辑它之前会显示一个旧数据(旧帖子),我必须刷新它一次以显示新数据 如何使页面B在从页面a重定向后立即显示新数据而不进行刷新。代码正在工作,看起来像是浏览器缓存问题。您可以在标记中添加元标记 $(document).ready(function() { $("#postform").live("submit",function(){ var datastri

我将此代码与ajax结合使用,在编辑数据(如在论坛中编辑帖子)后,从A页重定向到B页。 但当B页完成加载后,B页在我编辑它之前会显示一个旧数据(旧帖子),我必须刷新它一次以显示新数据


如何使页面B在从页面a重定向后立即显示新数据而不进行刷新。

代码正在工作,看起来像是浏览器缓存问题。您可以在
标记中添加元标记

$(document).ready(function() {
    $("#postform").live("submit",function(){
        var datastring=$(this).serialize();
    var postid=$(this).("post_id").serialize();
        $.ajax({
          type: "POST",
          url: "post_edit_save.php",
          data:  datastring,
          cache   : false,
          success: function(html){
            window.location.href='post_info.php?post_id='+postid;
          }
        });
        return false;
    });
});


或者,您可以按照注释中的建议在url中添加随机查询字符串。

浏览器不会加载任何新内容,因为您可能正在将
位置。href
设置为等于当前位置

如果您已经在
post_info.php?post_id=123
上,并且将
location.href
设置为相同的地址,则不会发生任何事情。将不会加载该页

所以这不是缓存问题。相反,您应该调用

<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE">
…在你的成功回访中


这将重新加载页面并显示新数据。

您需要向我们显示更多代码,尤其是整个
$。ajax
调用。如果浏览器正在缓存页面B,您可以通过在查询字符串中添加类似于
&cachebuster='+Math.random
的内容来解决此问题。@sberry您应该将其作为答案发布。无关:
.live()
已弃用(在jQuery 1.9中删除),您应该改用
.on()
。@sberry是的!这就是答案
location.reload();