javascriptでクッキーの配列に追記したい。



0   名前: Wz : 2007/02/01(木) 08:41  ID:H8lIO6uo sub-Cl
お世話になります。javascriptでクッキーの配列への追加で行き詰っています。

【何をしたいのか】
テキスト入力フォームに入力される文字列を、
クッキーで配列で10件まで格納していきたいのです。
また入力があるたびに配列に追加し、過去10件までの履歴を保持したいと思っています。

【現在の状況】
1回分をクッキーで配列に格納するところまでは大丈夫なのですが
入力があるたびに配列に追加してく方法がよくわかりません。

【何をしてみたのか】
以下が作成したコードのサンプルです。
実際作ったものはもっとぐだぐだなので即席で似たようなものを作りました。
クッキー読み出し部分はまだ手をつけていません。
コード記入エリア
<html>
<head>
<title>クッキーへデータを書き込む</title>
<script language="JavaScript"><!--
function saveData()
{
testName = "1"; //データ名の指定
testValue = document.myFORM.save.value; //配列に格納
testDay = 7; //保存日数
setDay = new Date();
setDay.setTime(setDay.getTime()+(testDay*1000*60*60*24));
expDay = setDay.toGMTString();
document.cookie = testName + "="+escape(testValue)+";expires="+expDay;
alert ('フォームの内容\n'+testValue);

}

function loadData()
{
testData = "";
testName = "1=";
theCookie = document.cookie+";";
start = theCookie.indexOf(testName);
if (start != -1)
{
end = theCookie.indexOf(";",start);
testData = unescape(theCookie.substring(start+testName.length,end));
}
document.myFORM.load.value = testData;

alert ('格納された内容\n'+testData);

}

// --></script>
</head>
<body>
<form name="myFORM">
<input type="text" name="save">
<input type="button" value="データ書き出し" onClick="saveData()"><BR>
<BR>
<input type="button" value="データ読み込み" onClick="loadData()"><BR>
<BR>
<SELECT name="load">
<OPTION value="aaa">aaa</OPTION>
<OPTION value="bbb" selected>bbb</OPTION>
</SELECT></form>
</body>
</html>


【備考】
クッキーで配列に追加する方法は結構調べたんですが、なかなか見つかりませんでした。

似たようなことをしてるサイトや参考になるサイトの情報でも結構です。
結構ややこしいことをやろうとしてるのかもしれませんが、分かる方よろしくお願いします。

1   名前: JAB : 2007/02/01(木) 08:41  ID:RRwQjd7X sub-gm
直接クッキーに追記はできません。
一度データを取り出し、変数上でデータを追加してから、もう一度クッキーに保存してください。

2   名前: Wz : 2007/02/01(木) 08:41  ID:H8lIO6uo sub-Cl
なるほど!

そういう技があったんですね。ありがとうございました!

一覧へ戻る