Iframe内にtexareaがあるWebページがあります。子ページjavascriptからこのtextareaの値を読み取る必要があります。現在、javascriptでwindow.parent.getelementbyID().value
を使用することで、iframe内のtextareaを除く親ページのすべてのコントロールの値を取得できます。
親ページのフレームIDとフレーム名は実行時に変化するため、フレームID /フレーム名を参照に使用することはできません。
HTMLがある場合
_<form name="formname" .... id="form-first">
<iframe id="one" src="iframe2.html">
</iframe>
</form>
_
およびJavaScript
_function iframeRef( frameRef ) {
return frameRef.contentWindow
? frameRef.contentWindow.document
: frameRef.contentDocument
}
var inside = iframeRef( document.getElementById('one') )
_
inside
はドキュメントへの参照になったので、iframe src内の内容に応じて、getElementsByTagName('textarea')
などを自由に実行できます。
JQueryを使用すると、contents()
を使用できます。例えば:
var inside = $('#one').contents();