Javascript jQuery复选框隐藏和显示div

Javascript jQuery复选框隐藏和显示div,javascript,jquery,checkbox,input,Javascript,Jquery,Checkbox,Input,我有问题,这项工作和所有的罚款,但复选框不太好 如果我在重新加载后标记了checkbox1,则会标记checkbox2和checkbox1。我必须帮助找出这是怎么回事 仅保存复选框标记 $(function(){ $('#checkbox1') .prop('checked', localStorage.input === 'true') .on('change', function() { localStorage.input = this.ch

我有问题,这项工作和所有的罚款,但复选框不太好 如果我在重新加载后标记了
checkbox1
,则会标记
checkbox2
checkbox1
。我必须帮助找出这是怎么回事

仅保存复选框标记

$(function(){        
  $('#checkbox1')
    .prop('checked', localStorage.input === 'true')
    .on('change', function() {
      localStorage.input = this.checked;
      if (this.checked) {
        $('.column_category').show(0); //checked
      } else {
        $('.column_category').hide(0);
      }
    })
    .trigger('change');
});

$(function(){        
  $('#checkbox2')
    .prop('checked', localStorage.input === 'true')
    .on('change', function() {
      localStorage.input = this.checked;
      if (this.checked) {
        $('.column_sku').show(0); //checked
      } else {
        $('.column_sku').hide(0);
      }
    })
    .trigger('change');
});


<input type="checkbox" id="checkbox1"/><label for="cbxShowHide">Categories</label>
<input type="checkbox" id="checkbox2"/><label for="cbxShowHide">SKU</label>
<input type="checkbox" id="checkbox3"/><label for="cbxShowHide">UPC</label>
$(函数(){
$(“#复选框1”)
.prop('checked',localStorage.input=='true')
.on('change',function()){
localStorage.input=this.checked;
如果(选中此项){
$('.column_category')。显示(0);//选中
}否则{
$('.column_category')。隐藏(0);
}
})
.触发(“变更”);
});
$(函数(){
$(“#复选框2”)
.prop('checked',localStorage.input=='true')
.on('change',function()){
localStorage.input=this.checked;
如果(选中此项){
$('.column_sku')。显示(0);//选中
}否则{
$('.column_sku').hide(0);
}
})
.触发(“变更”);
});
类别
SKU
UPC

我认为这是因为您将
checkbox1
checkbox2
绑定到
localStorage
的同一
input
字段。也许这会有帮助:

$('#checkbox1')
  .prop('checked', localStorage.check1State=== 'true')
  .on('change', function() {
     localStorage.check1State = this.checked;
     if (this.checked) {
       $('.column_category').show(0); //checked
     } else {
       $('.column_category').hide(0);
     }
  })
  .trigger('change');
});

第二个复选框上也有类似的内容。

这是一个解决方案

$('input[type=“checkbox”]”)。每个(函数(){
$(this.prop('checked'),(localStorage.getItem($(this.attr('id'))=='true')?'checked':“”)
});
$('input[type=“checkbox”]”)
.on('change',function()){
setItem($(this.attr('id'),this.checked);
如果(选中此项){
$('.+$(this.data('target')).show();
}否则{
$('.+$(this.data('target')).hide();
}
})
.触发(“变更”)

类别
SKU

UPC
没有问题,但您不需要0内部显示或隐藏方法。这是一个开始,如果我在每个复选框中都添加了此命令,这很有效。如果有任何想法,可能会使其成为小代码,可以更好,但非常感谢。。。这对我很有帮助谢谢这项工作完美我将类型改为类,因为这页上有很多复选框再次感谢