開くページに引数をわたしたいのですが。



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
出来ました!!

こんな便利な機能があったとは。
これでとても楽になりました。

親切に解答いただきありがとうございました!

一覧へ戻る