重新加载页面复选框后不应重置

时间:2018-08-01 06:51:23

标签: javascript jquery html angularjs checkbox

我正在使用Angular-Js和Jquery。我要在点击复选框后实施禁用页面中的所有复选框。但是,当我重新加载页面时,页面被重置,我不想在重新加载后重置禁用复选框。假设我在重新加载页面后选中了复选框,那么应该选中该复选框。

下面是代码示例。

$('#mainChk').on('click', function(){
  var categories = $('.disableCheck');
  categories.prop('disabled', !categories.prop('disabled'));
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="mainChk" type="checkbox" > Main
<input type="checkbox" class="disableCheck"> First
<input type="checkbox" class="disableCheck"> Second
<input type="checkbox" class="disableCheck"> Third

当我重新加载页面时,所有复选框都会重置。

我也可以使用Angular-J。我在查询参数中将复选框值设置为true或false。

  

$ location.search({复选框:disableCheck.prop('disabled')})

但是我没有得到想要的输出。

2 个答案:

答案 0 :(得分:0)

重新加载页面后,可以使用sessionStorage或localStorage之类的内容来保存复选框的状态。 我使用的是angularjs library

您也可以在jQuery中找到相同的东西。

答案 1 :(得分:0)

最好的方法是通过“保存表”的SELECT查询通过API方法在页面加载时调用ajax。

<input type="checkbox" class="disableCheck" value="First"> First
<input type="checkbox" class="disableCheck" value="Second"> Second
<input type="checkbox" class="disableCheck" value="Third"> Third

$(document).ready(function () {
                $.ajax({
                  url: 'abc.asmx',// Call List Method of Save Checkbox Table
                    success: function (data) {
                        callback(data);
                    },
                })
            });

  function callback(data) {
                $.each(data.d, function (index, item) {
                    $("#checkboxId option[value='" + item.SaveCheckboxColumnName + "']").prop("checked",
                        true);
                    $("#checkboxId option[value='" + item.SaveCheckboxColumnName +
                        "']").prop("disabled",
                            true);
                });
            }