動的なHTMLの作成方法

[新着] Webテンプレートを仮オープンしました



0   名前: たく : 2007/02/08(木) 10:09  ID:cFhJ3Qlr sub-99
基本的なことで恐縮なのですが・・・
<FORM ACTION=AAAA.html ・・・
とやってAAAA.htmlを呼び出し、そのとき渡したパラメータの値
によって、表示する内容が変化するHTMLページを作成したいのですが、
CGIを使わない場合は、document.write()を使って実現するのが
一般的なのでしょうか。
他に何か方法があれば教えてください。

パラメータによって変化させたいのは、
例えばタイトルの値を変えたりとか、
ある文章を非表示にしたいとか、です。

1   名前: 匿名 : 2007/02/08(木) 10:09  ID:UMe4AhfY sub-Gs
あらかじめ必要なパラメータが全部分かっている HTML 文書なら、document.write() でさくっと書いてしまうのが早いと思うけど。

雛形を用意して、最初にそれを読み込ませた後に、必要な箇所を書き換えても良い。この場合、スクリプト無効でも最低限、雛形部分だけは読める。また、利用者からの入力に応じてその場で書き換えるよう改造することも容易になる。

用途と必要に応じて。

2   名前: たく : 2007/02/08(木) 10:09  ID:cFhJ3Qlr sub-99
返信どうもありがとうございます!

> 雛形を用意して、最初にそれを読み込ませた後に、必要な箇所を書き換えても良い

自分のやりたいことは、この方法が適しているように思います。
この「雛形を読み込ませる」というのは具体的にはどのような命令で
実現できるのでしょうか。
またそこから必要な箇所を書き換える方法も分かりません。

初心者でごめんさない。
ヒントを与えていただけるとうれしいです。

3   名前: 匿名 : 2007/02/08(木) 10:09  ID:zI2A4Ka1 sub-Cz
> そこから必要な箇所を書き換える方法

以下はあまりヒントにならない気がするが一応。まずは HTML 文書中の位置を特定する方法を覚える必要があるだろう。そうすれば、1 つの雛形を使い回すことができるようになる。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict">
<html lang="ja">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
    <meta http-equiv="Content-Style-Type" content="text/css">
    <meta http-equiv="Content-Script-Type" content="text/javascript">
    <title>雛形</title>
  </head>
  <body>
    <h1>雛形</h1>
    
    <p id="test1">雛形。</p>
    <p id="test2">雛形。</p>
    
<!--============================================================-->
    <hr title="以下は実験用フォーム">
    <ul>
      <li>title 要素:<input onkeyup="document.title = this.value; "></li>
      <li>h1 要素:<input onkeyup="document.getElementsByTagName('h1')[0].firstChild.data = this.value; "></li>
      <li>p[@id="test1"] 要素:<input onkeyup="document.getElementById('test1').firstChild.data = this.value; "></li>
      <li>p[@id="test2"] 要素:<input onkeyup="document.getElementById('test2').firstChild.data = this.value; "></li>
    </ul>
    </script>
  </body>
</html>

> 「雛形を読み込ませる」というのは具体的に

複数の雛形を使い分けるなら、いわゆる Ajax 的な手法その他で雛形ファイルを取得することも可能だが、先の話になるかな。

4   名前: 匿名 : 2007/02/08(木) 10:09  ID:zI2A4Ka1 sub-Cz
> 複数の雛形を使い分けるなら

よく考えたら、今回は form 要素を使うのだから、action 属性に雛形ファイルを指定するだけで複数の使い分けが簡単にできるか。

そうすると、位置特定の方法さえ覚えれば何でもできる、ということになるのかな。まあ、どういうものを考えているのかにもよるが。

一覧へ戻る