2016-01-18 179 views
1

我試圖讓子類別複選框僅在相關父複選框被選中時才顯示。複選框子類別隱藏,直到選中父複選框

目前我使用下面的代碼:

<script type="text/javascript"> 
$(document).ready(function() { 
$("#listing_category-401 .children").css("display", "none"); 
$(".option").change(function() { 

    if ($('checkbox[id="in-listing_category-401"] :checked').val() == "true") { 
     $("#listing_category-401 .children").slideDown("fast"); 
    } 
}); 
}); 

+0

有什麼建議?你需要更多信息嗎? – Ben

+0

相關的HTML會很好。哪裏有問題?如果你的.val()==「true」中的console.log(「test」)是否會觸發?提供一個小提琴或你的HTML,我們可以迅速解決。 – edencorbin

+0

你好。感謝您的答覆。請看小提琴:https://jsfiddle.net/c59s6qsb/ – Ben

回答

0

好了,走近它略有不同,但下面的工作,繼承人的小提琴:https://jsfiddle.net/pxt4x7q1/

而這裏的代碼:

HTML

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script> 

    <li id="listing_category-401"><label class="selectit"><input value="401" type="checkbox" class="required option" name="_listing_category[]" id="in-listing_category-401" aria-required="true"> Artists/Bands</label> 
    <ul class="children"> 
    <li id="listing_category-399"><label class="selectit"><input value="399" type="checkbox" class="required" name="_listing_category[]" id="in-listing_category-399" aria-required="true"> Acoustic Artists/Bands</label></li> 
    <li id="listing_category-402"><label class="selectit"><input value="402" type="checkbox" class="required" name="_listing_category[]" id="in-listing_category-402" aria-required="true"> Alternative Artists/Bands</label></li> 
    </ul> 
    </li> 

風格:

<style TYPE="text/css" MEDIA=screen> 
    .children { 
    display:none 
    } 
    </style> 

JAVASCRIPT:

$(document).ready(function() { 
    $('#in-listing_category-401').change(function() { 
     if (this.checked) { 
      $("#listing_category-401 .children").slideDown("fast"); 
     } 
     else { 
      $("#listing_category-401 .children").slideUp("fast"); 
     } 
    }) 
    }) 
    </script> 
+0

芽你是一個絕對的傳奇!謝謝! – Ben

+1

如果你願意再次幫助,最後一件事 - 我試圖在單擊父類別時禁用所有父類別。我有以下小提琴在這裏工作正常(http://jsfiddle.net/barmar/rn6Va/),但不能在我的小提琴上工作正常(https://jsfiddle.net/c59s6qsb/16/) – Ben

+0

這應該做訣竅:jsfiddle.net/8rty3n2x – edencorbin