今天要求页面刷新一次后,用户在页面刷新前选中的checkbox还是保持原来的选中状态,于是就想到用jq获取被选中的checkbox对象,然后存储到 localstorage ,但是试了很久发现这个东西不能存储对象,只能存储字符串,幸好每个checkbox都有一个唯一对应的商品id值作为value,于是就遍历选中的checkbox,再一个个将value值存入,最后取出value值,根据这个value值选中checkbox,实现功能。
//存储被选中checkbox的个数以及value值
var checked=$('input[id=remember_check]:checked');
checked.each(function (i) {
localStorage.setItem(i,$(this).val());
localStorage.setItem('length',i);
});
$(function () {
//取得本地存储的被选中checkbox的个数,循环将checkbox选中
var length=localStorage.getItem('length');
for(var i=0;i<=length;i++){
var a=localStorage.getItem(i);
$("input:checkbox[value="+a+"]").attr("checked","checked");
}
//清空,避免刷新后checkbox还是选中状态
localStorage.clear();
});
————————————————
版权声明:本文为CSDN博主「阿姨炒乌鸦」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_29498555/article/details/80050710