【发布时间】:2016-10-03 21:03:36
【问题描述】:
我正在尝试使用 localstorage 保存复选框,这样当我刷新浏览器时,选中的复选框会一直存在,直到我单击删除按钮。
这是我迄今为止尝试过的:
function save(){
var checkbox = document.getElementById('ch1');
localStorage.setItem('ch1', checkbox.checked);
}
function load(){
var checked = JSON.parse(localStorage.getItem('ch1'));
document.getElementById("ch1").checked = checked;
}
function reload(){
location.reload();
localStorage.clear()
}
load();
<body onload="load()">
<input type="button" id="ReserveerButton1" value="save" onclick="save()"/>
<input type="button" id="Wisbutton1" value="delete" onclick="reload()"/>
<input type="checkbox" id="ch1"></input>
//additional checkboxes
<input type="checkbox" id="ch1"></input>
<input type="checkbox" id="ch1"></input>
<input type="checkbox" id="ch1"></input>
</body>
这成功保存了一个复选框,但我想保存多个复选框。因此我假设我需要在函数 save() 中添加一个循环 ...
function save(){
var checkbox = document.getElementById('ch1');
for (i = 0; i < checkbox.length; i ++) {
localStorage.setItem('ch1', checkbox.checked);
}
}
但是,我对如何通过 load() 调用获取这些检查值有些困惑?
干杯
【问题讨论】:
-
你不能在同一个页面上使用多个相同的id,使用class
标签: javascript html checkbox local-storage