checkbox勾选后关闭弹框在点进来依然有勾选状态,我需要下次打开弹窗清空所有状态
时间: 2024-02-23 12:03:30 浏览: 24
您可以使用 JavaScript 中的 localStorage 来存储 checkbox 的状态。当 checkbox 被勾选时,将其状态存储到 localStorage 中,当弹窗关闭时,将 localStorage 中的状态清空。下次打开弹窗时,检查 localStorage 中是否有存储状态,如果有,则将 checkbox 状态设置为存储的状态。
以下是示例代码:
```javascript
// 获取 checkbox 元素
const checkbox = document.querySelector('#checkbox');
// 当 checkbox 状态改变时,将其状态存储到 localStorage 中
checkbox.addEventListener('change', (event) => {
localStorage.setItem('checkboxState', event.target.checked);
});
// 在弹窗关闭时,清空 localStorage 中存储的状态
function closeDialog() {
localStorage.removeItem('checkboxState');
}
// 检查 localStorage 中是否有存储状态
const storedCheckboxState = localStorage.getItem('checkboxState');
if (storedCheckboxState !== null) {
checkbox.checked = storedCheckboxState === 'true';
}
```
当弹窗关闭时,调用 `closeDialog` 函数,将 localStorage 中存储的状态清空。在弹窗打开时,检查 localStorage 中是否有存储状态,如果有,则将 checkbox 状态设置为存储的状态。