如何复选框记录?

时间:2013-06-20 21:54:10

标签: javascript jquery html

所以在page1.html上我跟踪点击的复选框:

var checked = [];
$('input[type=checkbox]').on("click", function() {
    if($(this).is(":checked")) {
     checked.push($(this).val());
    }
}

最终,用户可以点击将其带到page2.html的提交按钮。因此,如果我有复选框和“Apple”,“Bannana”选中,下一页将会知道Apple和Banana已经过检查。但是,当用户单击后退按钮时...

在页面本身上它会检查“Apple”和“Banana”...但是当用户检查“Peach”时....看来,已检查的数组只包含“Peach”而不是“Apple”和“香蕉”。是否有一些语法可用于跟踪“Apple”和“Banana”,这样当用户点击后退按钮并检查“Peach”时,“已检查”的数组可能包含“Apple”“Banana”和“Peach”?

1 个答案:

答案 0 :(得分:0)

不是您提及的行为的浏览器的忠实粉丝,但您可能还想考虑在页面加载时检查每个复选框的状态,例如

$(function() {
  var checked = [];

  function addToChecked() {
    if ($(this).is(":checked")) {
      checked.push($(this).val());
    }
  }

  $("input:checkbox")
      .each(addToChecked)
      .on("click", addToChecked);
});

请注意,此代码表示只能将值添加到checked。如果取消选中相应的复选框,则必须添加逻辑以删除值。