问题描述:
三个窗口 A B C 其中B是模态窗口 B包含了一个frame.html用于刷新B
1.窗口A使用window.showModalDialog("frame.html?" + Math.random(),arg) 打开窗口B   其中arg = new Array(url, window);2.frame.html有一个方法
function reload(){
            document.getElementById("iframe").src = window.dialogArguments[0] + "&"+ Math.random();
          }
用于刷新 模态窗口B;frame.html还有一个参数Param1=window.dialogArguments[1]----即arg[1]3.页面B中有一个方法function refeasePage(){ 
                      parent.window.reload();
                            }
用于调用frame.html的reload()方法4.在B中打开 非模态窗口C 为了保证session不丢失我使用了parent.window.windowParam1.open(C)好 现在问题来了 我在C中要如何调用页面B中refeasePage(),或者说frame.html的reload() 应该怎么做呢?

解决方案 »

  1.   

    没看懂意思,感觉还是很模糊!如果问题是:或者说frame.html的reload() 应该怎么做呢?frame.html里加self.reload();不就可以了吗?
      

  2.   

    恩 是这样在窗口B中使用parent.window.windowParam1.open(C) 其中windowParam1就是arg[1],即A窗口的window对象,也就是说其实是A窗口打开C窗口的,也就是说B、C窗口可以看作是兄弟,都是A窗口的子窗口,那我的问题就是如何在C窗口中调用B窗口的refeasePage()方法 或者直接调用frame.html中的reload()用于在C窗口处理数据完可是刷新B窗口
      

  3.   

    window.opener.reload() 好像不行 因为C的opener其实是parent.window.windowParam1 而不是B窗口本身
      

  4.   

    当时给给B加frame.html就是为了给B刷新用的,因为B是模态窗口,好像没办法直接刷新