无法使用 jQuery.Get() 方法刷新
我使用 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");
});
}
非常感谢很多。 迪伦
I'm using the AJAX method jQuery.Get() because it's really simple to use.
I use this to load pages into a div. But when I change this page that is being loaded and click Refresh. It won't be updated. The only solution is to exit the browser and reopen it and go to the website again. This is really anoying and I wonder if there is a solution to this.
More info on the method:
http://api.jquery.com/jQuery.get/
Code used:
function pagina_ophalen(pagina){
$.get('paginas/' + pagina + '.html', function(data){
$('#inlaadcontent').css('display','none');
$('#inlaadcontent').html(data);
$('#inlaadcontent').fadeIn("slow");
});
}
Thank you very much.
Dylan
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
要使其正常工作,您可以进行的最简单的更改是
有什么区别?
您的浏览器正在缓存 AJAX 请求的结果,因为 URL 每次都是相同的。通过添加可变的查询参数(
?t=xxxxxxx
,基于当前时间戳),您可以使浏览器将每个请求视为新请求并再次获取页面,而不是使用缓存的结果。如果您看一下
jQuery.ajax
函数(其中get
只是一个以方便为目标的子集),您将看到有一个可以设置的cache
选项。如果设置为false
,这正是我上面描述的。The simplest change you can make to get this working is
What's the difference?
Your browser is caching the result of the AJAX request because the URL is the same each time. By adding a query parameter that is variable (
?t=xxxxxxx
, based on the current timestamp) you make the browser consider each request as a new one and fetch the page again instead of using the cached result.If you take a look at the
jQuery.ajax
function (of whichget
is simply a convenience-targeted subset), you will see that there is acache
option you can set. This does exactly what I described above if set tofalse
.最简单的方法是使用 http://api.jquery.com/jQuery.ajax/并将缓存设置为 false。
$.get() 无论如何都会调用 $.ajax,因此您将跳过一个步骤并获得正确的结果。
The easiest way is to use http://api.jquery.com/jQuery.ajax/ and set cache to false.
$.get() calls $.ajax anyways, so you are skipping a step, and getting the correct result.
缓存问题。尝试在您的 URL 中添加随机数:
Problem in caching. Try to add random number to your URL: