Bootstrap radio show hidden div
by Sergey Linnick
HTML
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<div class="btn-group" data-toggle="buttons" id="copyOptions">
<label class="btn btn-secondary-outline active">
<input type="radio" name="copyOptions" value="daily" autocomplete="off" checked> Daily
</label>
<label class="btn btn-secondary-outline">
<input type="radio" name="copyOptions" value="weekly" autocomplete="off"> Weekly
</label>
<label class="btn btn-secondary-outline">
<input type="radio" name="copyOptions" value="monthly" autocomplete="off"> Monthly
</label>
<label class="btn btn-secondary-outline">
<input type="radio" name="copyOptions" value="yearly" autocomplete="off"> Yearly
</label>
<label class="btn btn-secondary-outline">
<input type="radio" name="copyOptions" value="sameDay" autocomplete="off"> Same Day
</label>
</div>
<div class="hidden-options default" data-period="daily">
<div id="disableInputs">
<div class="form-group inline-inputs">
<div class="radio inline-inputs-item">
<input type="radio" name="optionsDaily" id="optionsDailyEvery" value="optionsDailyEvery">
<label for="optionsDailyEvery">Every</label>
</div>
<div class="inline-inputs-item">
<input type="number" class="form-control form-control-xs text-center" id="everyDay" placeholder="1" disabled>
</div>
<div class="inline-inputs-item">
<label for="everyDay">day</label>
</div>
</div>
<div class="radio">
<input type="radio" name="optionsDaily" id="optionsDailyWorkday" value="optionsDailyWorkday" checked>
<label for="optionsDailyWorkday">Every Workday </label>
</div>
</div>
</div>
<div class="hidden-options" data-period="weekly">
<div class="form-group inline-inputs">
<div class="inline-inputs-item">
<label for="">Repeat every</label>
</div>
...
JavaScript
// radio select copy times
$(".hidden-options:not(.default)").hide();
$(".hidden-options:first-child").show();
$("#copyOptions .btn").click(function() {
var options = $(this).find("input[name$='copyOptions']").val();
$(".hidden-options").hide();
$(".hidden-options[data-period='" + options + "']").show();
});