0

Lawnchairを使用していて、値をローカルに保存することができました。このようなもの:

var Users = new Lawnchair({table:'Users', adaptor:'dom'});


function save_prompt()
{
    var UserName = prompt("Your Username","John Doe");
    if (UserName!=null && UserName!="")
    {
        Users.save
        ({key:'UserData', SavedUserName:UserName});
    }
}

function recall_prompt() 
{
    Users.get
    ('UserData',function(r)
        {
            document.getElementById('Message').innerHTML = r.SavedUserName;
        }
    );  
}

両方の関数を呼び出し、 。でバインドされたボタンを使用しsave_promptます。recall_promptonclick

基本的に、このスクリプトはユーザー名を入力するためのテキストフィールドをポップアップし(John Doeがデフォルトです)、それを保存します。

を使用recall_promptすると、保存されたユーザー名をhtml div id="Message"に表示することで正常に機能しました。

私の質問は、2番目、3番目、およびそれ以降のユーザー名を保存する方法です。そして、それらをすべて取得してhtmlに表示する方法はdiv?'ネット上で見つけることができる多くの方法を試しましたが、それを機能させることができません。新しいユーザー名は常に古いユーザー名を上書きしているようです。

4

1 に答える 1

1

Lawnchairは、データをKey:Valueペアとして保存します。したがって、同じキー(UserData)で別のユーザー名を保存すると、常にオーバーライドされます。より多くのユーザー名を保存するには、キーを変更する必要があります。UserData_1、UserData_2のようにします。

または、キー「UserData」を使用してユーザー名の配列を保存することもできます。そのため、ユーザー名を保存する必要があるたびに、DBから配列を取得し、新しいユーザー名を追加して再保存します。

于 2011-10-07T09:26:13.423 に答える