我现在有一个主页面,main.jsp,主页面中有3个iframe,其中有一个iframe,代码如下
<iframe id="iframe1" src="a.jsp"></iframe>
在a.jsp中点击一个按钮,弹出一个div,div里的内容是另一个页面(b.jsp),如何在b.jsp中调用a.jsp中的元素或者方法,例如我关闭层的时候要刷新a.jsp中的某一个表格。如果直接在b.jsp中写window.parent就得到了main.jsp,而不是a.jsp谁知道该怎么做告诉小弟一下,小弟先谢过了!

解决方案 »

  1.   

    b.jsp的内容是怎么放入div的,用的iframe框进去的还是用Ajax获取的?
      

  2.   

    3.兄弟框架间的引用
    如果两个框架同为一个框架的子框架,它们称为兄弟框架,可以通过父框架来实现互相引用,例如一个页面包括2个子框架:
    <frameset rows="50%,50%">
         <frame src="1.html" name="frame1" />
         <frame src="2.html" name="frame2" />
    </frameset>
    在frame1中可以使用如下语句来引用frame2:
    self.parent.frames["frame2"];
      

  3.   

    a.jsp的div引入b.jsp的话,应该是直接变成一个页面了,不需要用到parent的,直接getElementById就可以获取到了。另外可以在这个弹出div的关闭按钮的点击事件中,调用a.jsp的刷新动作。
      

  4.   

    在b.jsp中可以访问a.jsp 例如:parent.functionName();
    parent.document.getElementById("divA").innerHTML = "bbb";你关闭层的代码是在a.jsp中的? 那就不用加parent
      

  5.   

    document.getElementById('iframeid_'+n).contentWindow
    关键是.contentWindow,你查下资料就行了
      

  6.   

    直接parent.的话得到的是main.jsp中的内容,不是a.jsp中的
      

  7.   

    你的弹出div的代码很可能也是个iframe, 插入到main.jsp了,可以这样试下
      parent.getElementById("iframe1").contentWindow.functionName();
      

  8.   

    弹出的div就是个iframe,关键是怎么在b.jsp中调用a.jsp的属性和方法