我有一个更新html的ajax函数(在jquery中)。没关系。
现在,当我点击地址栏中的输入(刷新)时,我的html没有更新(旧内容)。
然而,当我做cmd + R
时,我的HTML总是好的。
有什么问题?为什么我的内容会显示地址栏中的旧内容?
编辑:
我在jQuery中使用Chrome
et load()
答案 0 :(得分:5)
如果您在浏览器中遇到缓存问题,则需要设置标头以防止在服务器端的代码中缓存(例如Php,Java,Python .....等)。
但是如果你想避免在Ajax函数中进行缓存,请使用以下代码:
$.ajax({
url : scriptUrl,
type : "get", // or 'post'
cache : false, // This is to avoid Cache in Ajax Requests
// .........................etc
});
注意:提供有关您问题的更多详细信息,以获得更清晰的答案。
答案 1 :(得分:4)
在“head”标记内插入以下行,如下所示,
<head>
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Expires" CONTENT="-1">
答案 2 :(得分:1)
使用:
Cntl / Cmd + Shift + R
忽略Chrome中的缓存。
答案 3 :(得分:1)
提供更多详细信息将有所帮助。我认为你的ajax代码不起作用。可能是它正在获取数据但不是正确地更新页面。如果你在Firefox中,请尝试检查错误控制台。如果您要更新内容,它应该显示任何错误。
尝试使用fiddler来查找使用ajax实际获取的内容。有很多事情可以在这里发生并使它失败。
答案 4 :(得分:0)
在加载jQuery之后使用它
jQuery.ajaxSetup({ cache: false });
有关详细信息,请查看jQuery.ajaxSetup
的文档此函数使用传递给jQuery.ajax()方法的相同选项。
请注意,这将禁用所有jQuery ajax请求的缓存。