• ベストアンサー

javaスクリプトでHTML書き出しテンプレートを作りたい。

こんばんわ。 最近javaスクリプト学習中です。 OKwebのような左にメニューのあるサイトを作成予定なのですが、普通に左メニューを作ると100ページ作ったとしたらメニューの変更時、100回書き加える必要がありますよね? そこでジャバスクリプトをHTMLに埋め込もうと考えました。 こんな具合です。 HTML内メニューを表示させたい箇所に <SCRIPT LANGUAGE="JavaScript1.2" src="aaa.js"></SCRIPT> を埋め込み、外部ファイルaaa.jsでは document.write('メニュー表示用html'); とメモ帳で記入しテストしているところです。 ただ、どうしてもうまくいきません、、document.writeだけでよいと思っていたのですが、、 どうしてもうまく表示させたいと思っています。 大変恐縮ですが、どなたか知恵を貸していただけたら幸いです。 よろしくお願いします。

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

  • ベストアンサー
  • argi
  • ベストアンサー率27% (5/18)
回答No.2

実現したいことだけを見ると以下でいいのでしょうか? --abc.html ここから---------------------------- <html> <body> aaaa<br> <script language="JavaScript" src="aaa.js"></script><br> bbbb<br> </body> </html> --abc.html ここまで---------------------------- --aaa.js ここから---------------------------- document.write("cccc"); --aaa.js ここまで---------------------------- abc.htmlをブラウザで開くと aaaa cccc bbbb と表示されるはずです。

hanabusa_tsukasa
質問者

お礼

コピペしてみると使えました。 なぜ自分のもので駄目だったのだろう?? こちらを使ってHPを作って行きたいと思います。 ありがとうございました。

その他の回答 (1)

  • jakarta
  • ベストアンサー率38% (607/1597)
回答No.1

質問の内容だけでは、単にスクリプトが書かれたソースを読み込んでいるだけの状態になっていると思われます。 <SCRIPT LANGUAGE="JavaScript1.2" src="aaa.js">doWrite();</SCRIPT> などとdocument.write('メニュー表示用html'); をメソッドから呼び出す形にする必要があります。 閲覧者側がjavascriptをoffにしているとまったくメニューが見えなくなりますので、ナビゲーションはssiやcgiでincludeさせるという方法もありかと思います。

hanabusa_tsukasa
質問者

お礼

doWrite()が必要だったのですね! やはり勉強不足でした。 cgiなどでもできるのですか? そちらのほうが、お書きになられていたジャバのoffの恐れもなく使えそうですね! まったくcgiは触れたことがないのですが、挑戦してみようと思います。 ありがとうございました。