如果你需要一个没有json2的答案(我的意思不是每个人都知道json2),你可以使用这个答案; (如果你喜欢它,也许你能评价它:d)
<script type="text/javascript">
//Adds new uniqueArr values to temp array
function uniqueArr(a) {
temp = new Array();
for(i=0;i<a.length;i++){
if(!contains(temp, a[i])){
temp.length+=1;
temp[temp.length-1]=a[i];
}
}
return temp;
}
//Will check for the Uniqueness
function contains(a, e) {
for(j=0;j<a.length;j++)if(a[j]==e)return true;
return false;
}
jQuery(document).ready(function($){
$("input[type=checkbox]").each(function() {
$(this).change(updateCount);
});
updateCount();
function updateCount() {
var val;
var my_cookie="";
var new_my_cookie="";
var cookie_array;
var new_cookie_array;
var new_cookie_string="";
var number=0;
var temp_cookie="";
my_cookie=$.cookie("chosen_ones");
$(':checkbox:checked').each(function(){
val= $(this).val();
if((val!=null)&&(val!="")){
my_cookie=val+"|"+my_cookie;
}
});
new_cookie_array=uniqueArr(my_cookie.split("|"));
$.each(new_cookie_array, function(index, values) {
if((values!="")&&(values!="null")&&(values!=null)){
temp_cookie=values+"|"+temp_cookie;
}
});
$.cookie("chosen_ones", null);
$.cookie("chosen_ones", temp_cookie);
var cookie_array=$.cookie("chosen_ones").split("|");
$(':checkbox:not(:checked)').each(function(){
val= $(this).val();
$.each(cookie_array, function(index, values) {
if((values==val)&&(values!=null)&&(values!="")&&(values!="null")&&(values!="")){
cookie_array[index]="";
}
});
});
new_cookie_array=uniqueArr(cookie_array);
$.each(new_cookie_array, function(index, values) {
if((values!="")&&(values!=null)&&(values!="null")){
new_cookie_string=new_cookie_string+"|"+values;
}
});
$.cookie("chosen_ones", null);
$.cookie("chosen_ones", new_cookie_string);
alert($.cookie("chosen_ones"));
var temping_string=$.cookie("chosen_ones");
$("#count").text(temping_string.split("|").length-1);
$("#status").toggle(temping_string.split("|").length-1 >= 0);
};
});
</script>
删除Cookie可以不这样做。一旦页面URL更改。新的复选框需要检查。我不能放松以前的数据。 – JohnRoach 2010-08-26 09:03:34
在这种情况下,将其存储在数组中,使用json解析它,将json对象存储在cookie中。这样,你可以使用复选框#编号作为数组键,并将值设置为1或0. 这是一个真正的痛苦屁股阵列不工作与饼干... – joggink 2010-08-26 09:25:03
你可以给我一个代码示例请? – JohnRoach 2010-08-26 09:29:52