2016-05-29 10 views
1

私は入力を画面上に表示させるためにjavascriptでコードを作成しようとしています。 LocalStorageに入力されたデータを保存したい。私は値を取ろうとし、localStorage.setItemとlocalStorage.getItemを使って私はローカルストレージにも格納しようとしました。しかし、私が送信ボタンをクリックするたびに挿入したすべてのレコードを表示したいので、現在のレコードと以前のレコードも保存したい。 私は配列にプッシュしようとしましたが、現在のレコードだけがあり、以前に格納された値はありませんでした。私はjqueryを望んでいない。私は単純なJavaScriptコードがほしい。 ありがとうございます。ローカルストレージからの値を配列、JavaScriptに格納する方法は?

eg- 
    var data=[]; 
    function myFunction(data) 
    { 
     var name= document.getElementById("nm").value; 
     localStorage.name= name; 
     for(var i=0;i<localStorage.length;i++) 
     { 
      var key = localStorage.key(i); 
      var value = localStorage.getItem(key); 
      data.push(value); 
     } 
    } 
+0

データの保存方法も表示してください。配列のjson表現を格納してから、それをストレージから取り出して解析するのが最も簡単です。便利な小さなライブラリスクリプトは 'Store.js'です – charlietfl

答えて

1

コメントで述べたようにうん、それはちょうどあなたの配列の文字列表現を保存してのlocalStorageの値として格納することが最良です。私は、これはあなたが正しい方向に開始される期待し

var name= document.getElementById("nm").value; 
var data; 
if (localStorage.getItem("name") === null) 
    //First value to be stored 
    data = []; 
else 
    //There is some value already in the array 
    data = JSON.parse(localStorage.getItem("name")); 

//Push name to data array in any case 
data.push(name); 
//Update localStorage 
localStorage.setItem("name",JSON.stringify(data)); 

:ウェブのlocalStorageを使用すると、あなたがこのような何かを行うことができ、整数や文字列(ほとんどの文字列)official docs

することができ、簡単なキーと値のペアを保存することができます。

+0

' localStorage.setItem( "name")= JSON.stringify(data) ' - これは' localStorage.setItem(key、value) 'メソッドの間違った使い方です。 – RomanPerekhrest

+0

@RomanPerekhrest、それを指摘してくれてありがとう!通知され、更新されました:) –

+0

ありがとうございますans、その与えるdata.pushは関数エラーです。どうして?データは配列 – Sarah

関連する問題