2012-02-05 97 views
0

这可能是一个非常基本的问题,但我无法解决这个问题。我在MainPage.jsp文件中定义了以下内容。访问兄弟框架的DIV元素

<html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
     </head> 

     <frameset rows="44,*,26" cols="*"> 
      <frame src="SubFrame1.jsp" name="SubFrame1" scrolling="no" id="SubFrame1" /> 
      <frame src="SubFrame2.jsp" id="SubFrame2" title="SubFrame2" /> 
     </frameset> 

     <noframes> 
     <body style="overflow:hidden"> 
     </body> 
     </noframes> 

     </html> 

如何访问从另一个(例如SubFrame2.jsp)在一个子帧页面(例如SubFrame1.jsp)定义的任何元素?

谢谢。

回答

1

您可以使用javascript做到这一点。使用parent.frame_nameHere你可以找到一个例子。

编辑:

假如你已经被称为 “someinput” 一个输入子帧中的一个:

<script type='text/javascript'> 
    alert(window.parent.SubFrame1.document.getElementById('someinput').value); 
</script> 

<input type='text' name='someinput' id='someinput' value='my value!' /> 

您可以通过JavaScript中的子帧的两个访问值

但请注意,使用帧是obj选项。最好将你的内容分为divscss这样的风格。

+0

感谢塞尔吉奥的回复,并为我的迟到表示歉意。我试过你的解决方案,但是当我调试JS时,我无法导航到window.parent.mainFrame.document.all。我只在最新版本的Firefox和Crome上试过这些。我有些想要通过如下方式访问兄弟元素:x.y.document.getElementByID(“divID”)。谢谢。 – Shaun 2012-02-13 22:58:40

+0

@Shaun在你的情况下应该是'window.parent.SubFrame1'。希望有所帮助! :) – 2012-02-14 13:45:09

+0

我无法导航到您的示例参考[here](http://www.java2s.com/Code/JavaScriptReference/Javascript-Properties/parentExample.htm)中的'window.parent.mainFrame.document.all'。因此,在我的例子中,我无法导航到'window.parent.SubFrame1.document.all'。它给出了一个未定义的错误。 – Shaun 2012-02-15 13:32:54