首页 > 解决方案 > 使用本地存储的复选框状态

问题描述

好的,我有一个包含大约 30 个不同复选框的表单,它们的状态使用此代码存储在本地存储中(选中或未选中);

<script type="text/javascript">//<![CDATA[
$(window).load(function(){
$(':checkbox').on('change', function () {
localStorage.setItem(this.id, this.checked);
});
$(':checkbox').each(function () {   
var status = localStorage.getItem(this.id) === "true" ? true : false;
$(this).prop("checked", status);
});
});
 //]]></script>

我的问题是,在表格中,我有两个复选框被设置为选中和禁用(如下所示),

<input type="checkbox" name="opt9" value="Yes" id="2" checked="checked"  disabled="disabled"/>
<input type="checkbox" name="opt8" value="Yes" id="6" checked="checked" disabled="disabled"/>

如何将这些永久检查在本地存储中并将它们添加到我已经拥有的代码(或完整的新代码)中

标签: javascriptlocal-storage

解决方案


您可以通过过滤它们来忽略设置禁用复选框的值。

$(':checkbox:not(:disabled)')


推荐阅读