Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JQuery:如何根据复选框的初始状态隐藏/显示div?_Jquery - Fatal编程技术网

JQuery:如何根据复选框的初始状态隐藏/显示div?

JQuery:如何根据复选框的初始状态隐藏/显示div?,jquery,Jquery,假设我有一个复选框和一个div,其中包含我想隐藏/显示的元素,具体取决于复选框是否选中 <input type = "checkbox" id = "myCheckbox"/> <div id = "display-hide"> //Contains more elements </div> 是否仍然需要验证复选框的值并相应地隐藏/显示div 感谢您的帮助我认为您应该在代码中编辑一点 script type = "text/javascript">

假设我有一个复选框和一个div,其中包含我想隐藏/显示的元素,具体取决于复选框是否选中

<input type = "checkbox" id = "myCheckbox"/>
<div id = "display-hide">
  //Contains more elements
</div>
是否仍然需要验证复选框的值并相应地隐藏/显示div


感谢您的帮助

我认为您应该在代码中编辑一点

script type = "text/javascript">
  $(function () {
    $("#myCheckbox").click(function(){
        $("#display-hide").toggle(this.checked);
     });
     if($("#myCheckbox").attr("checked"))
     {
          $("#display-hide").show();
     }
     else
     {
          $("#display-hide").hide();
     }
  });    
</script>
scripttype=“text/javascript”>
$(函数(){
$(“#我的复选框”)。单击(函数(){
$(“#显示隐藏”).toggle(选中此项);
});
if($(“#myCheckbox”).attr(“选中”))
{
$(“#显示隐藏”).show();
}
其他的
{
$(“#显示隐藏”).hide();
}
});    
而不是这个:

$("#display-hide").hide();
您可以这样使用:

$("#myCheckbox").triggerHandler('click');
$("#myCheckbox").click(function(){
  $("#display-hide").toggle(this.checked);
}).triggerHandler('click');
这将执行刚刚绑定的
单击
处理程序,而不实际执行框上的
单击
,因此它会使初始状态匹配,而不会产生干扰。总的来说是这样的:

$("#myCheckbox").triggerHandler('click');
$("#myCheckbox").click(function(){
  $("#display-hide").toggle(this.checked);
}).triggerHandler('click');

我比.is(“:checked”)更喜欢它。嗯,这种Javascript业务通常很难掌握。我需要更多的关注。它现在工作得很好。非常感谢。@Richard-Welcome:)顺便说一句,即使在这个简短的示例中,您也比许多开发人员做得好得多,例如,您使用的是DOM属性,
this.checked
where's available。这绝对是正确的做法,不需要通过10种方法就可以得到一个正确的属性,仅凭这一点很多人是无法理解的……你已经正确地做到了:)好吧,等着瞧,当涉及到Javascript时,我怎么会这么笨(哈哈!)。