2016-07-30 12 views
0

どのようにしてlocalStorageからデータを削除し、onclick関数でテーブルを削除する必要がありますか?私のテーブルストレージは、localStorageアイテムは、(行のみ)を作成するためにJavaScriptを使用しています。私が望むのは、特定の行からデータを削除し、すべての行をクリアして最新のストレージを取り戻すことです。Javascriptテーブルとローカルストレージ

は、ここに私のコードです:

function removeItem(that){ 
var x = localStorage.getItem("cart"); 

    if(x==null){ 
     x = []; 
    } 
    else{ 
     x = JSON.parse(x); 
    } 
    x.splice(i,1); 
    console.log(x); 
    localStorage.setItem("cart", JSON.stringify(x)); 
    for(var i = 1; i<=table.length; i++){ 
     document.getElementById("table").deleteRow(i); 
    } 


} 
+0

'x.splice(I、1);'? 「私」とは何ですか? – Rayon

+0

インデックス。私はそれを正しく行うかどうかわからない。これは私が助けを求めている理由です。 –

答えて

0

まず、それがデータを格納するための配列を使用しても大丈夫だが、私はそれがオブジェクトを使用する方が良いと思います。 例えば、カートは次のようになります。

var cart = { 
    1: { 
    id: 1, 
    Name: "One", 
    Price: 100 
    }, 
    2: { 
    id: 2, 
    Name: "Two", 
    Price: 200 
    } 
} 

は、あなたが第二

delete cart[2]; 

とID = 2でカートのアイテムを削除することができ、あなたは、このようなgetElementByIdを、のgetElementsByClassName、addEventListenerをなどの機能に組み込まれて使用することができます。 ..問題を解決するが、jqueryはこれらの問題のはるかに良い選択です。

document.getElementById("table") 

// is equals to 

$("#table") 

短いですか? jqueryのもっと多くの機能を使ってあなたのウェブサイトをあなたの方法で調理することができます。

あなたの上記の例のコード http://codepen.io/jnovax/pen/kXjGwL

Rgrdsために少しコード、

+0

私はJavaScriptを使って作成したテーブルの行と特定のテーブルに格納されているデータを削除したいのですが、それはなぜ私がスプライスを使用しているかの配列です。その時点以降に削除する考えはありますか? –

+0

あなたのhtml&jsを表示して、私があなたの問題plzをはっきり見えるようにしてください。 – novax

関連する問題