即使在页面刷新后仍保持复选框?

时间:2016-09-12 11:51:37

标签: jquery

我写了一个if条件来检查复选框:

$('input[type="checkbox"]').click(function() {
    if (this.id == "internships" && this.checked) {
        window.location.href = "<?php echo Yii::app()->createAbsoluteUrl('job/internships'); ?>";
    }
    else {
        window.location.href = "<?php echo Yii::app()->createAbsoluteUrl('job/internships'); ?>";
    }
});

现在我想确保即使在页面刷新之后复选框也不会改变其状态,除非我/用户这样做。我怎么能这样做?

2 个答案:

答案 0 :(得分:0)

您可能只想生成已设置checked属性的复选框。 遵循您的代码风格,它将类似于

<?php
// prepare a string to be inserted.
// it will be either empty, or a nonempty "checked" attribute
$shouldBeChecked = is_this_the_internship_page() ? 'checked="checked"' : '';
?>

然后......

<input type="checkbox" <?php echo $shouldBeChecked; ?> >

如果我正确记得PHP: - )

请参阅:https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/checkbox

此外,在撰写此答案时,您的JS包含两个相同的重定向。

答案 1 :(得分:0)

使用localStorage

<强> JS

$('#check').on('click', function(){

  if(localStorage.getItem("checkedbox") == 'true') {
    $(this).prop(checked, 'false');
    localStorage.setItem("checkedbox", 'false');

  }
  else {
    $(this).prop(checked, 'true');
     localStorage.setItem("checkedbox", 'true');
  }

})

<强> HTML

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type = "checkbox" id="check"/>