我在datatable中有多个复选框,其中包含一个名称和不同的值,我可以存储所有复选框的cookie,并通过以下代码进行检查
$(document).ready(function(){
$('input[type=checkbox]').each(function() {
var mycookie = $.cookie($(this).attr('value'));
if (mycookie && mycookie == "true") {
$(this).prop('checked', mycookie);
}
});
$('input[type=checkbox]').change(function() {
var date = new Date();
var uncheckDate = new Date();
// to expire cookies after one day if checked
date.setTime(date.getTime() + (1 * 24 * 60 * 60 * 1000));
// to expire cookies after 1 seconds if unchecked
uncheckDate.setTime(date.getTime() + ( 1 * 1000));
$.cookie($(this).attr("value"), $(this).prop('checked'), {
path: '/',
expires: date
});
$.cookie($(this).attr("value"), $(this).prop('unchecked'), {
path: '/',
expires: uncheckDate
});
});
});
如果未选中,我也可以为每个复选框的Cookie过期
但我需要使用按钮,例如expireButton到期所有选中的复选框。
我如何实现这一目标?
任何建议?
答案 0 :(得分:1)
您可以尝试如下:
$('.expireButton').on('click',function()
{
var uncheckDate = new Date();
uncheckDate.setTime(date.getTime() + ( 1 * 1000));
$.each($('input[type=checkbox]:checked'),function(){ //Get all the checked checkbox
$.cookie($(this).attr("value"), {
path: '/',
expires: uncheckDate
});
});
});