不同呼叫的不同变量增量

时间:2014-09-18 11:59:53

标签: javascript jquery local-storage

我有一个列表,其中包含列表中每个项目的按钮。 对于每个按钮单击,我希望变量应该通过JavaScript函数递增,即列表中所有按钮的常用函数。

<button onclick="GetIncrements(resource_id)">

为此,我有以下javascript:

function GetIncrement(id){
if(typeof(Storage) !== "undefined") {
        if (localStorage.clickcount) {
            localStorage.clickcount = Number(localStorage.clickcount)+1;
        } else {
            localStorage.clickcount = 1;
        }
        document.getElementById("result").innerHTML = "You have clicked the button " + localStorage.clickcount + " time(s).";
}

每次单击列表中的不同按钮时,相同的变量都会更新。但我希望根据resource_id得到不同的变量增加。

我想在同一个功能中为每个按钮设置单独的计数器。

我不能为不同的点击创建不同的功能,因为列表是动态的。

如果有办法我们可以根据resource_id在函数中生成动态变量。

1 个答案:

答案 0 :(得分:2)

你想要做的是这样的事情:

 function GetIncrement(id){            
         if(typeof(Storage) !== "undefined") {
            var storageKey = "clickcount" + id;
            if (localStorage[storageKey]) {
                localStorage[storageKey] = Number(localStorage[storageKey])+1;
            } else {
                localStorage[storageKey] = 1;
            }
            document.getElementById("result").innerHTML = "You have clicked the button " + localStorage[storageKey] + " time(s).";
          }
      }