要解决保存后复选框不保持选中的问题,可以使用浏览器的本地存储(localStorage或sessionStorage)来存储复选框的选中状态。下面是一个使用JavaScript实现的示例代码:
HTML代码:
JavaScript代码:
// 检查本地存储中是否存在选中状态
function checkCheckboxStatus() {
var isChecked = localStorage.getItem("isChecked");
if (isChecked === "true") {
document.getElementById("myCheckbox").checked = true;
} else {
document.getElementById("myCheckbox").checked = false;
}
}
// 保存选中状态到本地存储
function saveCheckboxStatus() {
var isChecked = document.getElementById("myCheckbox").checked;
localStorage.setItem("isChecked", isChecked);
console.log("保存成功");
}
// 页面加载时检查选中状态
checkCheckboxStatus();
// 点击保存按钮时保存选中状态
document.getElementById("saveButton").addEventListener("click", saveCheckboxStatus);
这段代码首先定义了两个函数,checkCheckboxStatus
用于检查本地存储中是否存在选中状态并更新复选框的选中状态,saveCheckboxStatus
用于将复选框的选中状态保存到本地存储中。
然后,在页面加载时调用checkCheckboxStatus
函数来检查选中状态,并在点击保存按钮时调用saveCheckboxStatus
函数来保存选中状态。
这样,无论是刷新页面还是关闭再打开页面,复选框的选中状态都会被正确地保持。