開くページに引数をわたしたいのですが。
-
0 名前: まるまる : 2006/03/20 18:52
- 開くページに引数をわたしたいのですが。
説明が下手ですが、よろしくおねがいします。
<昔は>
商品が100個あるとして、
それぞれ1つのHTMLで、1つ商品情報を持っていました。
「100個のhtml(中に直接データ保持)」
商品1.html
商品2.html
商品3.html
.
.
.
商品100.html
<現在は>
商品情報は1つの外部data.jsファイルに配列でまとめて。
---data.js---------------------
name[1] = "商品名1";
sanc[1] = "産地1";
name[2] = "商品名2";
sanc[2] = "産地2";
name[3] = "商品名3";
sanc[3] = "産地3";
.
.
.
name[100] = "商品名100";
sanc[100] = "産地100";
-----------------------(実際は項目30個位)
そして、
ファイル名を連番にし、
javascriptでファイル名を取得し、
そのファイル名と配列をつきあわせてデータを表示
とゆう形にしました。
まったく同じファイルをコピペで
100個用意して、リネームソフトで名前を連番に
001.html
002.html
003.html
.
.
.
100.html
とゆうかたちにしました。
<要望>
まったく同じファイルでも100個ファイルを
用意するのは、レイアウトを変更したときは、
また、コピー、リネームをしなければいけなくて
たいへんなんです。
そこで、1つのhtmlで全ての商品を動的に表示させたいのですが。
(「Item.html と data.js」だけで)
イメージとして、
商品一覧ページがあり、
そこで商品番号005がクリックされたら、
Item.htmlに引数「005」を渡して、
data.jsから「5」番の情報を取得し表示する。
っとゆうイメージです。
引数をわたすことさえ出来れば、可能なんですが、
引数をわたす方法、ありましたらおしえてくさだい。
もしくは、もっといい方法ありましたら、教えてください。
-
1 名前: m035 : 2006/03/20 18:52 [URL]
- url?データ
で。このページでも同じ方法でurlにデータが付加されています。
<a href="Item.html?100">商品番号:100</a>
でもいいですし、JavaScriptなら
location.href="Item.html?100";
とか
location.href="Item.html?"+数値;
でも出来ます。
取得はlocation.searchを使うか、urlから直接抜き出します。
つまり、
location.search.slice(1);
もしくは、
var url=location.href;
url=url.slice(url.lastIndexOf("?")+1);
で取得できます。
-
2 名前: まるまる : 2006/03/20 18:52
- 出来ました!!
こんな便利な機能があったとは。
これでとても楽になりました。
親切に解答いただきありがとうございました!