当用户复制或关闭选项卡时,我尝试使用
checkbox
保存和恢复 localStorage
和其他元素的状态。当我只有 checkbox
时效果很好,但是一旦引入其他元素,checkbox
状态就无法在 Chrome 和 Edge 中正确保存。受到here讨论的类似问题的启发,我创建了一个演示该问题的版本:
function save() {
var checkbox = document.getElementById('checkbox1zaal1');
var textarea = document.querySelector('textarea');
localStorage.setItem('checkbox1zaal1', checkbox.checked);
localStorage.setItem('box', textarea.value);
}
function load() {
var checked = JSON.parse(localStorage.getItem('checkbox1zaal1'));
document.getElementById("checkbox1zaal1").checked = checked;
document.querySelector('textarea').value = JSON.parse(localStorage.getItem('box'));
}
function wis() {
location.reload();
localStorage.clear();
}
load();
<input type="button" id="ReserveerButton1" value="save" onclick="save()" />
<input type="button" id="Wisbutton1" value="delete" onclick="wis()" />
<input type="checkbox" id="checkbox1zaal1">
<textarea>Hello, world!</textarea>
我错过了什么?这是 Chrome 和 Edge 中的已知错误,还是我可以尝试另一种方法来确保
checkbox
状态与其他元素一起正确保存?
添加:
var as = document.getElementById('textbox').value
//Code to sent to discord webhook
sent(as)