Reputation: 126
I have added two drop down boxes on my webpage like below, but I want to make them cascading and then pass the value of the drop down button to a function.
<div class="btn-group">
<button data-toggle="dropdown" class="btn btn-success dropdown-toggle">Success <span class="caret"></span></button>
<ul class="dropdown-menu">
<li><a href="#" onClick="return false;">Action</a></li>
<li><a href="#" onClick="return false;">Another action</a></li>
<li><a href="#" onClick="return false;">Something else here</a></li>
<li class="divider"></li>
<li><a href="#" onClick="return false;">Separated link</a></li>
</ul>
</div><!-- /btn-group -->
<div class="btn-group">
<button data-toggle="dropdown" class="btn btn-info dropdown-toggle">Info <span class="caret"></span></button>
<ul class="dropdown-menu">
<li><a href="#" onClick="return false;">Action</a></li>
<li><a href="#" onClick="return false;">Another action</a></li>
<li><a href="#" onClick="return false;">Something else here</a></li>
<li class="divider"></li>
<li><a href="#" onClick="return false;">Separated link</a></li>
</ul>
</div><!-- /btn-group -->
Upvotes: 3
Views: 8166
Reputation: 2927
As KyleT mentioned in the comments you could accomplish with enum in place of arrays. However as a comfort pick I'll be using an array. Fiddle
var states = [
"Kansas",
"Oklahoma",
"Texas"
];
$('.dropdown-menu > li > a').click(function() {
yourFunction(this.text);
});
function yourFunction(val) {
if ( val === "Action" ) {
$('#states').html('');
for ( var i in states ) {
$('#states').append("<li><a href='#'>" + states[i] + "</a></li>");
}
}
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.2/js/bootstrap.min.js"></script>
<link href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.2/css/bootstrap.min.css" rel="stylesheet"/>
<div class="btn-group">
<button data-toggle="dropdown" class="btn btn-success dropdown-toggle">Success <span class="caret"></span>
</button>
<ul class="dropdown-menu">
<li><a href="#">Action</a>
</li>
<li><a href="#">Another action</a>
</li>
<li><a href="#">Something else here</a>
</li>
<li class="divider"></li>
<li><a href="#">Separated link</a>
</li>
</ul>
</div>
<!-- /btn-group -->
<div class="btn-group">
<button data-toggle="dropdown" class="btn btn-info dropdown-toggle">Info <span class="caret"></span>
</button>
<ul class="dropdown-menu" id="states">
<li><a href="#">Action</a>
</li>
<li><a href="#">Another action</a>
</li>
<li><a href="#">Something else here</a>
</li>
<li class="divider"></li>
<li><a href="#">Separated link</a>
</li>
</ul>
</div>
<!-- /btn-group -->
Upvotes: 5