2012-02-05 11 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> 

どのように私は別の一つのサブフレームページ(例えばSubFrame1.jsp)(例えばSubFrame2.jsp)で定義された任意の要素にアクセスすることができますか?

ありがとうございます。

答えて

1

javascriptでこれを行うことができます。 parent.frame_nameを使用してください。 Hereの例があります。

EDIT:

<script type='text/javascript'> 
    alert(window.parent.SubFrame1.document.getElementById('someinput').value); 
</script> 
:あなたはジャバスクリプトによって、サブフレーム2の値にアクセスすることができます

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

サブフレーム1で使用すると、1つの入力が "someinput" と呼ばれていると仮定すると、

しかし、フレームを使用することは完全なオプションではないことに注意してください。コンテンツをdivsに分割し、cssをスタイルに使用する方が良いでしょう。

+0

返信いただきありがとうございました。遅延された方にお詫び申し上げます。私はあなたのソリューションを試しましたが、JSをデバッグしたときにwindow.parent.mainFrame.document.allにナビゲートできませんでした。私はFirefoxとCromeの最新バージョンでこれらを試してみました。私は、x.y.document.getElementByID( "divID")のような方法で兄弟要素にアクセスする方法をいくつか示しました。ありがとう。 – Shaun

+0

@Shaunあなたのケースでは 'window.parent.SubFrame1'にする必要があります。希望が助けてくれる! :) –

+0

あなたの例のリファレンス[here](http://www.java2s.com/Code/JavaScriptReference/Javascript-Properties/parentExample.htm)の 'window.parent.mainFrame.document.all'にナビゲートできませんでした。同様に私の例では 'window.parent.SubFrame1.document.all'にナビゲートできませんでした。定義されていないエラーが発生します。 – Shaun

関連する問題