2014-07-10 127 views
0

我需要在开始时隐藏一个div,然后在检查两个复选框后淡入。这是我到目前为止(基于从这里的另一个问题):jQuery。只有当表格框被选中时才显示div

<input type="checkbox" name="terms" id="terms" /> 
<input type="checkbox" name="age" id="age" /> 

<div id="lists"> 
    <!-- my div content goes in here --> 
</div> 



    $("#lists").hide(); 

    $("#terms" && "#age").click(function(){ 
    $("#lists").fadeToggle(); 
    }); 

我不能得到它的工作。我明显可以用一个复选框来处理它,但是我只需要在两个框都被选中时淡入。我仍然在学习jQuery,所以如果这是一个简单的解决方案,请原谅我。

回答

3

您应该使用这样的事情:如果你要使用显示

$("#terms, #age").change(function(){ 
    var checked = $("#terms").prop('checked') && $("#age").prop('checked'); 
    $("#lists")[checked ? 'fadeIn' : 'fadeOut'](); 
}); 
+1

+1,很好的解决方案。回答问题并处理复选框是否未选中。 –

+0

热潮!这工作。我学到了一些东西。谢谢大家的帮助。 – agon024

2
<input type="checkbox" name="terms" id="terms" class="mycheck"/> 
<input type="checkbox" name="age" id="age" class="mycheck"/> 

<div id="lists"> 
<!-- my div content goes in here --> 
</div> 



$("#lists").hide(); 

$(".mycheck").on("change",function(){ 
    if($("#terms").prop('checked') && $("#age").prop('checked')){ 
     $("#lists").show(); 
    } 
}); 
+2

,让我建议你:'$( “#清单”)进行切换($( “#条款”)。 prop('checked')&& $(“#age”)。prop('checked'));' –

0

据我所知使用& & jQuery的不提供多种选择。他们目前通过用逗号分隔选择器来执行多个选择器。你可以看到Jquery Documentation是如何完成的。还有一点需要注意的是,即使您对所提供的代码进行了更正,当您单击一个复选框时,您会看到预期的行为,但如果您单击另一个复选框,它将隐藏#lists div元素。

相关问题