方法一:
主要就是利用cookie:
每次点击checkbox触发事件的时候都先解析出cooki中的值,至于存的一个数组,这样是方便对这些值的管理;
1、先遍历这个数组,把当前选中的这个checkbox的值从当前cookie中去除,这样方便加入,否则你在判断的时候当前是选中状态,然后又把这个值存进去,导致重复,这样不严谨;
2、判断当前是否选中,不选中则不做任何操作,选中的话,则将当前值存入数组;
3、最后将整理好的数组存入cookie;
/*复选框选中的值存入cookie*/
$("input[name='checkbox']").click(function(){
/*先不管这个checkbx在不在cookie中,遍历数组去掉当前这个值*/
var val = $(this).val();
var array = $.cookie("checkValue").split(",");
array.forEach(function(item,index){
if(val==item){
array.splice(index,1);
}
});
/*判断当前的checkbox是不是选中,选中的话在将这个值加进去*/
if($(this).prop('checked')){
array.push($(this).val());
}
/*最后把处理完的值存入cookie*/
$.cookie("checkValue",array);
console.log($.cookie("checkValue"));
});
方法二:
可以利用全局变量:
思路和利用cookie的类似,此处就不再赘述。