如何在for循环中使用计数器

How to use the counter in a for loop

本文关键字:计数器 循环 for      更新时间:2023-09-26

我正在尝试将值存储在sessionStorage中。下面的代码运行良好,但我想使用一个循环:

$(document).ready(function(){
    $("#leksjon_submit").click(function(){  
        sessionStorage.svar_15_1=document.getElementById("spm_15_1").value;
        sessionStorage.svar_15_2=document.getElementById("spm_15_2").value;
        sessionStorage.svar_15_3=document.getElementById("spm_15_3").value;
        sessionStorage.svar_15_4=document.getElementById("spm_15_4").value;
        sessionStorage.svar_15_5=document.getElementById("spm_15_5").value;
    });
}); 

这是我使用循环的许多不成功的尝试之一。它不起作用。会话存储中未保存任何内容。有什么建议吗?谢谢

$(document).ready(function(){   
    $("#leksjon_submit").click(function(){
        for (i = 1; i < 6; i++) {
            sessionStorage.svar_15_[i]=document.getElementById("spm_15_")+i.value;  
            }
    });     
});

您可以像这样使用i作为计数器:但当您使用变量访问对象中的值时,需要使用括号表示法。

for (i = 1; i < 6; i++) {
    sessionStorage['svar_15_'+i]=document.getElementById("spm_15_"+i).value;  
}

您需要使用括号符号

sessionStorage["svar_15_" + i] = document.getElementById("spm_15_"+i).value; 

您可以使用setItem()方法:

sessionStorage.setItem('svar_15_' + i, document.getElementById('spm_15' + i).value);

类似的内容。不要忘记声明循环变量。

for (var i = 1; i < 6; i++) {
  var key = 'svar_15_' + i;
  var id = 'spm_15_' + i;
  sessionStorage[key] = document.getElementById(id).value;  
}