当前位置: 首页 > 图文教程 > 网络编程 > Javascript > javascript IFrame 强制刷新代码

Javascript
javascript 新浪背投广告实现代码
javascript 选择文件夹对话框(web)
JS 自动完成 AutoComplete(Ajax 查询)
javascript scrollLeft,scrollWidth,clientWidth,offsetWidth 完全详解
jQuery 插件开发 其实很简单
最简单的jQuery程序 入门者学习
javascript 读取xml,写入xml 实现代码
JQuery 实现的页面滚动时浮动窗口控件
javascript 动态加载 css 方法总结
javascript 表格左右收缩
jqurey 学习笔记 传智博客佟老师附详细注释
javascript dom 操作详解 js加强
JS 动态添加列表框项效果代码
Javascript 事件流和事件绑定
Google Map Api和GOOGLE Search Api整合实现代码
9个javascript语法高亮插件 推荐
Prototype String对象 学习
javascript ImgBox透明遮罩层背景图片展示
javascript FAQ函数(提问+回复)
jQuery TextBox自动完成条

Javascript 中的 javascript IFrame 强制刷新代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 551 ::
收藏到网摘: n/a

经常会使用多个iframe来展示领域模型主子关系(主/子单),测试发现iframe是有cache功能的 当第一次从主窗口进入到一个iframe简称{A}中,此时这个{A}中呈现的数据是新的,这时我又点了另外的一个iframe简称{B},这里{B}的数据也是新的,在{B}中进行一些逻辑处理,如向{A}中批量增加模型数据,这里我们再进入到{A}中会发现数据是被缓存着的。因为是从{B}中对批量操作了{A}的数据,{B}是与server通信的,也就是会进行逻辑层/持久层操作,这样server端更新的呈现部分是{B}而不是全部,这也就是局部刷新,只刷{B}。而我们需要做的是让{A}中的内容也跟着变。
解决方案:
·很明显iframe.window.location.reload();不符合当前需求。
·使用window.setTimeout(iframe.window.loadction.reload(),1000);这种方式会造成多次刷新,如果还要在{A}中对{B}的数据进行更新呢?
·研究了半天,其实可以直接从iframe cache问题入手来解决,很easy,直接不让它缓存不就完了,不缓存了,当然也就用不着刷新了。
示例:
复制代码 代码如下:

function doInsert2BatchCallBack() {
var pIf = parent.document.getElementById('IFRAME_A');
pIf.src = pIf.src + "&".concat(Math.random());
//提交批量导入请求
}