【问题标题】:Can't refresh using jQuery.Get() method无法使用 jQuery.Get() 方法刷新
【发布时间】:2011-11-16 22:27:18
【问题描述】:

我正在使用 AJAX 方法 jQuery.Get(),因为它使用起来非常简单。 我用它来将页面加载到 div 中。但是当我更改正在加载的页面并单击刷新时。它不会被更新。唯一的解决方案是退出浏览器并重新打开它并再次访问该网站。这真的很烦人,我想知道是否有解决方案。

有关该方法的更多信息: http://api.jquery.com/jQuery.get/

使用的代码:

function pagina_ophalen(pagina){    
    $.get('paginas/' + pagina + '.html', function(data){
    $('#inlaadcontent').css('display','none');
        $('#inlaadcontent').html(data);
    $('#inlaadcontent').fadeIn("slow");
    });

}

非常感谢。 迪伦

【问题讨论】:

  • 到目前为止,源代码似乎是正确的。您的 Firebug/Chrome 控制台中是否有任何错误? pagina 是一个有效的字符串吗?我个人建议使用 Firebug 或 Chrome 开发工具来进一步研究这个问题。

标签: jquery ajax get refresh


【解决方案1】:

你可以做的最简单的改变就是

function pagina_ophalen(pagina){    
    $.get('paginas/' + pagina + '.html',
          { t = new Date().getTime() },    // ADD THIS
          function(data){
            $('#inlaadcontent').css('display','none');
            $('#inlaadcontent').html(data);
            $('#inlaadcontent').fadeIn("slow");
          });
}

有什么区别?

您的浏览器正在缓存 AJAX 请求的结果,因为 URL 每次都相同。通过添加一个可变的查询参数(?t=xxxxxxx,基于当前时间戳),您可以让浏览器将每个请求视为一个新请求并再次获取页面,而不是使用缓存的结果。

如果您查看jQuery.ajax 函数(其中get 只是一个以方便为目标的子集),您会看到您可以设置一个cache 选项。如果设置为false,这正是我上面描述的。

【讨论】:

  • 我现在明白了这个问题,使用你编写的代码的精确副本很难让我在 aptana 中出错
  • 这个工作函数 pagina_ophalen(pagina){ $.get('paginas/' + pagina + '.html', { name: Math.random } , function(data){ $('#inlaadcontent ').css('display','none'); $('#inlaadcontent').html(data); $('#inlaadcontent').fadeIn("slow"); }); }
【解决方案2】:

最简单的方法是使用http://api.jquery.com/jQuery.ajax/并将缓存设置为false。

$.get() 无论如何都会调用 $.ajax,因此您跳过了一个步骤,并获得了正确的结果。

【讨论】:

    【解决方案3】:

    缓存问题。尝试在您的 URL 中添加随机数:

    var randomToken = Math.random(); // Or replace if you need
    $.get('paginas/' + pagina + '.html' + ? randomToken, function(data) {
        // ...
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-22
      • 2012-08-07
      • 2020-05-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多