我有一个列表,其中包含列表中每个项目的按钮。 对于每个按钮单击,我希望变量应该通过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
在函数中生成动态变量。
答案 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).";
}
}