2014-07-10 167 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元素。

相關問題