Javascript 复选框未选中时无法隐藏段落

Javascript 复选框未选中时无法隐藏段落,javascript,jquery,input,checkbox,Javascript,Jquery,Input,Checkbox,当复选框未选中时,我试图隐藏一个段落。现在,我只能在选中该复选框时显示该段落 以下是我的jquery: $('.pharmacy').click(function(){ $('.pcsoc').show(); }); 取消选中段落时,如何隐藏该段落?尝试: $('.pharmacy').click(function(){ $('.pcsoc').toggle(); }); 尝试: 改为绑定到更改事件: $('.pharmacy').change(function(e){ $('.pc

当复选框未选中时,我试图隐藏一个段落。现在,我只能在选中该复选框时显示该段落

以下是我的jquery:

$('.pharmacy').click(function(){
$('.pcsoc').show();
});
取消选中段落时,如何隐藏该段落?

尝试:

$('.pharmacy').click(function(){
  $('.pcsoc').toggle();
});
尝试:


改为绑定到更改事件:

$('.pharmacy').change(function(e){
  $('.pcsoc').toggle();
});
或者,您可以检查
是否为(':checked')
并进行自己的隐藏/显示(更加防弹)


改为绑定到更改事件:

$('.pharmacy').change(function(e){
  $('.pcsoc').toggle();
});
或者,您可以检查
是否为(':checked')
并进行自己的隐藏/显示(更加防弹)


您需要测试它是否已选中或未选中:

$('.pharmacy').click(function(){
  if ($(this).is(':checked')) {
    $('.pcsoc').show();
  }
  else $('.pcsoc').hide();
});

编辑按照Brad Christie的建议,最好绑定到
change()
方法。

您需要测试它是否被选中:

$('.pharmacy').click(function(){
  if ($(this).is(':checked')) {
    $('.pcsoc').show();
  }
  else $('.pcsoc').hide();
});

编辑按照Brad Christie的建议,最好绑定到
change()
方法。

您可以检查复选框是否已选中并适当响应:

$('.pharmacy').click(function() {
    if(this.checked)
        $('.pcsoc').show();
    else
        $('.pcsoc').hide();
});

您可以检查复选框是否已选中,并相应地作出响应:

$('.pharmacy').click(function() {
    if(this.checked)
        $('.pcsoc').show();
    else
        $('.pcsoc').hide();
});

演示:--这里的
is()
版本:演示:--这里的
is()
版本:我喜欢这个。在窗体打开时无法预测复选框状态的可能情况下,弹性更大。您需要在jQuery对象中包装
$(this)
,以访问
.is()
,我喜欢这样。在窗体打开时无法预测复选框状态的可能情况下,弹性更大。您需要在jQuery对象中包装
$(this)
,以访问
.is()
注意使用
切换()
可能导致选中/未选中状态与显示/隐藏状态不同步。请注意,使用
toggle()
可能导致选中/未选中状态与显示/隐藏状态不同步。