- PR -

IFRAME内に表示されている内容の取得方法

投稿者投稿内容
べる
ぬし
会議室デビュー日: 2003/09/20
投稿数: 1093
投稿日時: 2006-07-31 18:39
引用:
すみませんが、frames[iframeのname].document以下のプロパティをお教え願えないでしょうか?

ぜうすさんが教えてくれているとおりじゃないですか?
.body.innerHTML
でしょう
ぶさいくろう
ぬし
会議室デビュー日: 2005/11/22
投稿数: 1232
お住まい・勤務地: 川崎市(は俺も含めてロクな人間が住んでないよw)
投稿日時: 2006-07-31 18:40
全然つたわってねーーーーーーーーーーーーーーーwwっうぇwwっうぇwwwwっうぇw


引用:

タイガーさんの書き込み (2006-07-31 18:28) より:
すみませんが、frames[iframeのname].document以下のプロパティをお教え願えないでしょうか?


まずは自分で調べろよ。な!
mio
ぬし
会議室デビュー日: 2005/08/25
投稿数: 734
お住まい・勤務地: 神奈川県
投稿日時: 2006-07-31 18:55
>いろいろなパターンを試した
その「いろいろなパターン」を、ぜひ書き出してみて欲しいものです…(-_-;
タイガー
会議室デビュー日: 2006/07/31
投稿数: 14
投稿日時: 2006-07-31 19:17
引用:
引用:
--------------------------------------------------------------------------------

すみませんが、frames[iframeのname].document以下のプロパティをお教え願えないでしょうか?
--------------------------------------------------------------------------------

ぜうすさんが教えてくれているとおりじゃないですか?
.body.innerHTML
でしょう


frames[iframeのname].document.bodyが、NULLを返す為、困っているのです。

べる
ぬし
会議室デビュー日: 2003/09/20
投稿数: 1093
投稿日時: 2006-07-31 20:07
引用:
frames[iframeのname].document.bodyが、NULLを返す為、困っているのです。

これを先に書くべきでしたね。しかし
frames[iframeのname].document で「オブジェクトがかえされます。」
なのにbodyはNULLかぁ、不思議ですね。

試しているのは一貫して最初に記述したA.aspxとB.htmlの例ですか?
getIframeが何なのかわからないし、どんな方法で確認してるかわからないですけどね。alert()?

frames[iframeのname] の部分は具体的になんて書いてます?
(動的に書いてるならクライアント出力結果のHTMLソース)

念のためブラウザは何で確認してます?IE6?
mio
ぬし
会議室デビュー日: 2005/08/25
投稿数: 734
お住まい・勤務地: 神奈川県
投稿日時: 2006-07-31 20:20
もしや、「frames[iframeのname].document.body」とそのまま書いているなんてことはないですよね…?
かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2006-07-31 21:31
IFRAME内部のHTMLの読み込みが完了する前に読もうとしていませんか?
例えば、onloadイベントが発生する前とか。
その場合、document.bodyは参照できません。
コード:

<html>
<head>
<script>
function test(){
alert(hoge.document.body.innerHTML);
}
</script>
</head>
<body onload="test()">
<iframe id="hoge" src="b.html"></iframe>
<script>
alert(hoge.document.body);
</script>
</body>
</html>



[ メッセージ編集済み 編集者: かつのり 編集日時 2006-07-31 21:32 ]
かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2006-07-31 21:46
最初の投稿をよく見ていないで書いたのですが、多分該当するケースですね。
下記のように非同期でならonloadイベントを書かなくても
IFRAMEの内容を取得することが可能ですが、
多分すぐにIFRAMEの内容を欲しいのでしょうね。変数に代入していますから。
その場合は設計を見直す必要があります。
コード:
<body>
<iframe id="hoge" src="b.html">
</iframe>
<script language="javascript">
	hoge.document.onreadystatechange = function(){
		if(hoge.document.readyState == 'complete'){
			alert(hoge.document.body.innerHTML);
		}
	};
</script>
</body>


スキルアップ/キャリアアップ(JOB@IT)