将Span ID的值保存到本地存储HTML5

时间:2014-03-19 13:56:43

标签: javascript html5 local-storage

创建了一个jsfiddle,我试图获取由向上和向下按钮创建的值(800)以便在本地保存

但是该示例一直在文本框中保存键和值

http://jsfiddle.net/HMEVd/143/

var prefix = "";
$("#power_save").click(function () { 
var key = $("#key").attr('value');
var value = $("#value").attr('value');
var power_save = $("#CountedClicks").attr('value');
localStorage.setItem(prefix + key, value, power);      //******* setItem()
//localStorage[prefix+key] = value; also works
RewriteFromStorage();
});

function RewriteFromStorage() {
$("#data").empty();
for(var i = 0; i < localStorage.length; i++)    //******* length
{
    var key = localStorage.key(i);              //******* key()
    if(key.indexOf(prefix) == 0) {
        var CountedClicks = localStorage.getItem(key);  //******* getItem()
        //var value = localStorage[key]; also works
        var shortkey = key.replace(prefix, "");
        $("#data").append(
            $("<div class='kvp'>").html(shortkey + "=" + value)
               .append($("<input type='button' value='Delete'>")
                       .attr('key', key)
                       .click(function() {      //****** removeItem()
                            localStorage.removeItem($(this).attr('key'));
                            RewriteFromStorage();
                        })
                      )
        );
    }
}
}

RewriteFromStorage();

我怎样才能得到它:

1. KEY是预定义的,如POWER? 2.保存的值是countclicks,即用向上和向下按钮改变的数字?

1 个答案:

答案 0 :(得分:0)

您错误地使用setItem(),它需要一个密钥和一个值:

  [NameSetter] void setItem(in DOMString key, in DOMString data);

参考:https://developer.mozilla.org/en-US/docs/Web/Guide/API/DOM/Storage

如果您想使用相同的密钥来访问这两个值,您可以简单地将它们放在一个数组中:

  localStorage.setItem(prefix + key, [value, power]);   

然后你可以通过以下方式访问它们:

  value = localStorage.getItem(prefix + key)[0];
  power = localStorage.getItem(prefix + key)[1];

或者,您可以简单地将两个不同的键用于两个单独的条目。