Jquery 复选框必须在所有页面上保持选中状态

Jquery 复选框必须在所有页面上保持选中状态,jquery,checkbox,Jquery,Checkbox,我有一个确认ToS的复选框。在用户未选中此复选框并确认ToS之前,PayPal按钮覆盖有50%的透明层,无法按下。另一个PayPal按钮、查看卡等也是如此。如果用户在未选中复选框的情况下尝试按下任何PayPal按钮,他会收到JS警报,他必须选中并确认ToS 我的问题是,复选框忘记了它的选中状态,如果用户重新加载页面或转到另一个页面,那么他必须在每个页面上选中复选框,这很令人伤心 下面是代码、HTML和JS,它们可以生成复选框、覆盖和警报推送。该代码在Joomla框架内工作,并与Joomla的组件

我有一个确认ToS的复选框。在用户未选中此复选框并确认ToS之前,PayPal按钮覆盖有50%的透明层,无法按下。另一个PayPal按钮、查看卡等也是如此。如果用户在未选中复选框的情况下尝试按下任何PayPal按钮,他会收到JS警报,他必须选中并确认ToS

我的问题是,复选框忘记了它的选中状态,如果用户重新加载页面或转到另一个页面,那么他必须在每个页面上选中复选框,这很令人伤心

下面是代码、HTML和JS,它们可以生成复选框、覆盖和警报推送。该代码在Joomla框架内工作,并与Joomla的组件K2 JQuery一起工作: HTML

这将是伟大的,如果有人知道的东西,可以完成这个代码停留复选框一旦选中所有页面上被选中。 感谢您提供的所有代码片段、完整性和正确方向的建议

PS:对不起,我没有早说:如果可能的话,我正在寻找一个使用会话而不是cookie的解决方案。在上次欧盟饼干法之后,越来越多的人拒绝饼干:(

PPS:此代码用于在页面刷新和反向浏览时记住复选框选中状态:

<?php

$a = array("ToS_yes");

foreach($a as $key => $value)
{
  echo "<input type='checkbox' name='rating[]' value='$value'"; if(in_array($value,$_POST['rating'])) echo " checked "; echo ">$value";
}
使用cookie:

$.cookie("tos", true); // set the cookie to true (once the tos is clicked).
然后在每一页上检索cookie,如果为真,则自动选中该框

jQuery版本
1.6
及以上版本:

var tos = $.cookie("tos");

if (tos) {
   $('myCheckbox').prop('checked', true);
}
jQuery版本低于
1.6
您必须使用
.attr()

使用cookie:

$.cookie("tos", true); // set the cookie to true (once the tos is clicked).
然后在每一页上检索cookie,如果为真,则自动选中该框

jQuery版本
1.6
及以上版本:

var tos = $.cookie("tos");

if (tos) {
   $('myCheckbox').prop('checked', true);
}
jQuery版本低于
1.6
您必须使用
.attr()


放置cookie保存复选框状态放置cookie保存复选框状态谢谢!也可以用会话完成吗?@ChillyBang您也可以用会话设置tos标志当然。@Darren-我的意思是在会话中保存复选框状态,您也是吗?您能举个例子吗?@ChillyBang-您使用的是什么技术你在使用?ASP.NET,PHP?@Darren:我使用PHP和jquery/joomla。看,这段代码在页面刷新和“后退”时起作用浏览:谢谢!也可以用会话来完成吗?@ChillyBang你也可以用会话来设置tos标志当然。@Darren-我的意思是在会话中保存复选框选中的状态,你也是吗?你能举个例子吗?@ChillyBang-你在用什么技术?ASP.NET,PHP?@Darren:我使用PHP和jquery/joomla。看,这是code在页面刷新和“向后”浏览时做的事情:
var tos = $.cookie("tos");

if (tos) {
   $('myCheckbox').attr('checked', true)
}