詳しい方のお知恵を借りたいのですが、宜しくお願いします。

現在、ページが表示されると、DBから取ってきた値を
iframe内に表示できるようにしようと思っています。

その前段階として、ある文字をiframeに
代入しようとしましたが、代入できませんでした。
「エラーはオブジェクトがありません。」でした。。。
ボタンを押したときに動くnext_actionの関数では
代入することができました。

原因がわからず困っています。
ご教授いただけますでしょうか。
宜しくお願いします。

【script部】
var iframe;
window.onload = function init (){
iframe = document.getElementById('comment');
iframe.contentWindow.document.designMode="on";
iframe.contentWindow.document.body.innerHTML = "abc";
}
function next_action (){
iframe.contentWindow.document.body.innerHTML = "abc";
alert(iframe.contentWindow.document.body.innerHTML);
}

【BODY部】
<body>
<form id="form1" name="form1" method="post" action="color_palette.html" >
<input type="button" name="button" id="button" value="FONT" onclick="color_palette()"/>
<p> </p>
<iframe id="comment" name="fcomment" style="height:40;width:300;">
</iframe>
<input type="button" name="submit" value="次へ" onClick="next_action()">
</form>
</body>

回答の条件
  • 1人10回まで
  • 登録:
  • 終了:2009/03/09 13:58:18
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答1件)

id:jeanjean No.1

回答回数64ベストアンサー獲得回数3

ポイント80pt

window.onload

では、自分自身のHTMLロードが完了した時点を検知するが、

iframe内のhtmlのロードが終わっているかどうかは検知しないため、

存在しない iframe内のbodyを参照してエラーが出るのではないでしょうか?

id:yoichi111

ご回答ありがとうございます。

iframe内のhtmlのロードをチェックするにはどうすればよいのでしょうか。

知識不足ですいません。

2009/03/09 13:44:01

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません