最近在做项目,遇到一个奇怪问题,在A页面load B页面的时候,第一次打开时很正常,
<script type="text/javascript">
$.ajaxSetup({cache: false});
loadCC:function(){
$("#infoCommentPage").load("${webRoot}/info/comment/${modelId}/${info.id}/1");
}
};
$(document).ready(function(){
P.loadCC();
});
</script>
上面的infoCommentPage 是一个DIV的ID,
但后面在B页面提交后,要刷新B页面,问题就出来了,提交到后台的代码运行了,数据库也有数据了,然后重新redirect回来,死活B页面不刷新,没有看到最新的内容,在firefox下用firebug可以看到请求后台数据了后台断点也进去了,
但页面依旧是没有刷新,用ie8更离谱了,提交加入库的断点进去了,但是请求B页面的断点根本没有进去,这样搞死人了,找了半天,以为是JS有问题,后来用上了load的回调函数,
("#xxx").load("xxxx",function(){alert("aaaa");});
发现load方法 是调用的,所以就怀疑是缓存问题,果然一查,就是缓存搞的鬼。
$.ajaxSetup({cache: false});
然后在B页面上加入
<meta charset="utf-8" />
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache">
<META HTTP-EQUIV="Expires" CONTENT="0">
这样就解决了问题,在FF下仔细看还可以发现,load方法请求的时候后面都自动加上了时间
,无论在FF,IE下都可以正常刷新
分享到:
相关推荐
`jquery.loadtemplate` 是一个基于 jQuery 的插件,专门用于加载和使用模板,使得在Web应用中动态渲染内容变得更加便捷。这个压缩包文件“frontend-project-jquery.loadtemplate.zip”包含了一个名为“jquery-...
在本实例中,我们将探讨如何利用jQuery的`load()`函数实现这种功能。`load()`函数是jQuery提供的一个强大的Ajax方法,主要用于从服务器加载HTML片段并将其插入到DOM中。 首先,我们要理解jQuery的`load()`函数的...
一、用法 jquery的load函数是请求另一个文件并加载到当前DOM里的调用,load方法的完整格式是:load( url, [data], [callback] )(注意没有参数是GET方式请求,有参数则是 POST方法)。 * url:是指要导入文件的地址。...
在本例中,我们使用jQuery的load()方法来实现Ajax请求。load()函数通常用于动态加载HTML内容到指定的DOM元素中。在这个场景下,我们通过点击“登陆”按钮触发Ajax请求: ```javascript $("#denglu").click(function...
针对这个问题,有几种解决方法可以避免jQuery的缓存问题。 1. **设置`.ajax`方法的`cache`参数为`false`** 当使用`.ajax`进行Ajax请求时,可以通过设置`cache`选项为`false`来禁用缓存。这将告诉浏览器不要存储...
此外,还有其他几种方法可以解决缓存问题: 1. 更改文件名。 2. 在URL后添加时间戳,如`labels.html?timestamp=当前时间戳`。 3. 在HTML文件头部添加`Pragma`和`Expires`元标签来禁止缓存。 4. 在服务器端通过HTTP头...
**jQuery 图片缓存插件与脚本** 在网页设计中,图片的加载速度对于用户体验至关重要。如果一个网站上的图片加载缓慢,用户可能会感到沮丧,从而导致页面跳出率增加。为了优化图片加载,开发人员经常使用jQuery插件...
然而,在使用此方法时,尤其是在Internet Explorer(IE)浏览器中,可能会遇到缓存问题。 问题的根源在于IE浏览器对于某些类型的请求默认采用缓存机制。当使用JQuery的load方法请求服务器上的文件时,如果文件内容...
"JS加载load图片jquery.LoadImage图片预加载(逐渐加载)demo"这个项目就是针对这个问题提供的一种解决方案,它利用JavaScript和jQuery库来实现图片的预加载和逐渐加载,从而提高网页的加载速度和用户交互体验。...
本文将深入探讨如何利用Ajax与jQuery的load()、$.get()等方法来实现实时验证用户输入的有效性,避免不必要的页面刷新。 首先,我们来看load()方法,它是jQuery中的一个便利功能,用于加载远程HTML文档到指定的DOM...
9. **性能优化(Performance)**:jQuery通过缓存查找结果、优化选择器等方式提高性能,同时1.11版继续修复了一些已知的性能问题。 10. **API更新(API Updates)**:jQuery 1.11.0版可能包含对旧API的修复和改进,...
Replace jQuery file in the page with local cached file to speed up page load. Besides, due to the GFW of China, Chinese can't access Google CDN js. This chrome extension can avoid this situation. ...
- **缓存机制**:jQuery会缓存匹配到的DOM元素,减少重复查询DOM的操作,提升性能。 - **优化的DOM操作**:通过创建文档碎片(Document Fragment)批量处理DOM操作,减少浏览器的重绘和回流。 5. **Ajax交互** -...
8. **高效性能**: jQuery通过缓存和优化选择器来提高性能。此外,了解何时使用`$(document).ready()`和`$(window).load()`可以帮助优化页面加载时机。 9. **兼容性**: jQuery致力于跨浏览器兼容性,使得开发者不必...
4. **缓存jQuery对象**:多次使用的元素应存储在变量中,避免重复选择。 ### 六、学习资源 jQuery官网(https://jquery.com/)提供了完整的文档和示例,是学习的最佳起点。此外,网上有许多教程和论坛(如Stack ...
6. **性能优化**:jQuery在设计时考虑了性能问题,如使用Sizzle选择器引擎优化DOM查找,使用缓存避免重复操作,以及延迟执行(`.deferred()`)和节流/debounce(防止频繁触发)等技术。 7. **源码结构分析**:jQuery...