• ベストアンサー

JavaScriptでHTMLを表示させる方法

cgiのチャットを使用しております。 古いチャットのため、フレーム対応となっています。 <frameset cols="83%,*"> <frame src="./form.htm" name="chat_form" marginwidth="10" marginheight="10" scrolling="auto"> <frame src="./rom.htm" name="chat_rom" marginwidth="10" marginheight="10" scrolling="auto"> </frameset> <frame src="./chat.htm" name="chat_main" marginwidth="10" marginheight="10" scrolling="auto"> <noframes> <BODY bgcolor="#FFFFFF" text="#666666"> <CENTER> <H2>このチャットはフレーム対応のブラウザでご利用ください</H2> </CENTER> </BODY> </noframes> </frameset> </html> これをフレームを無くすようにしたいのですが、CGIプログラムのため、修正は難しいのです。 JavaScriptでどのように表示できるのでしょうか?document.writeとか…調べても分からなかったのでした。 例 <div> <script type="text/javascript"> ???("○○.html"); </script> </div> 宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.1

フレームを使わないということでしょうか? 1)送信後や一定時間ごとに画面を全部書き直す。  この場合、送信側(cgiか?)で全画面を送信する必要があります。 2)iframeを用いて同じ構成のものを作る。  ほとんど同じ要領でできるので手軽と言えますが、frameは使わなくて  もiframeを使用することになります。 3)Ajaxで必要部分のソースを読み込んで表示する。  一番ご希望にそった形とは思いますが、ある程度の知識が必要にな  ります。 Ajax用のライブラリなどがいろいろ出されていますので、  それらを利用するのがよいかも。 ところで、ご質問文のHTMLもどこかおかしくないですか? <framset>タグの対応が変だし、このままだと「chat.htm」が表示されないみたいですけど??

nkmyr
質問者

お礼

iframeってのがありましたね。 Javascriptにこだわっていたため、気づかなかったのでした。 簡単に済みそうです。 どうもありがとうございました。

その他の回答 (1)

回答No.2

フレームを外すだけならtop.location.href="○○.html"で行けますが、 何のためにフレームをはずすのか、どんなタイミングで外すのかによっては、HTMLで実現した方が良いと思います。 > CGIプログラムのため、修正は難しいのです。 また、JavaScriptを埋め込むためにはCGIスクリプトの修正が必要ですが、その点は大丈夫ですか?

nkmyr
質問者

お礼

javascriptではこんな風に記述するんですね。 勉強になりました。 どうもありがとうございました。

関連するQ&A