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

Javascript
DOM相关内容速查手册
[转]JS宝典学习笔记
背景,文字渐变(无闪屏)
一个仿DOS的Loading效果
JavaScript使用prototype定义对象类型
如何用JS获取带“\”字符串的中间值?
如何识别上传前检测的图像是有效的方法
js模拟滤镜的图片渐显效果
如何用javascript去掉字符串里的所有空格
javascript如何判断数组内元素是否重复的方法集锦
控制打印时页眉角的代码
模仿Flash AS效果的导航菜单
页面自定义拖拽布局
js判断浏览器的比较全的代码
又一日历输入效果没考虑兼容性,IE通过
项目添加
[转]prototype 源码解读 超强推荐
JAVASCRIPT对象及属性
JavaScript解决Joseph问题
实例:用 JavaScript 来操作字符串(一些字符串函数)

Javascript 中的 javascript IFrame 强制刷新代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 562 ::
收藏到网摘: 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());
//提交批量导入请求
}