简体   繁体   中英

Bootstrap drop-down list with dependencies

How to create a drop down list using bootstrap to include it in the form? There has to be 3 fields but 1 of them has to be hidden depending of what a User selected in first field.

Example:
First field options: Book/Movie
2nd field options if book is selected (after selecting in first field this field should appear 1field should stay visible and 3rd field should stay invisible): Action/Horror/Drama
3rd field oprions if movie is selected: DVD/Cinema/VoD (now 1st field is visible, 2nd is not.

Code which i've tried.

<div class="dropdown">
  <button type="button" class="btn btn-primary dropdown-toggle" data-toggle="dropdown">
    Books
  </button>
  <div class="dropdown-menu_1-always-visible">
    <a class="dropdown-item" href="#">Books</a>
    <a class="dropdown-item" href="#">Movies</a>
  </div>
<div class="dropdown-menu-2-hidden-if-movies-selected-in-field-1">
    <a class="dropdown-item" href="#">Action</a>
    <a class="dropdown-item" href="#">Horror</a>
    <a class="dropdown-item" href="#">Drama</a>
  </div>
<div class="dropdown-menu-3-hidden-if-books-selected-in-1">
    <a class="dropdown-item" href="#">DVD</a>
    <a class="dropdown-item" href="#">Cinema</a>
    <a class="dropdown-item" href="#">Vod</a>
  </div>
</div> 

Thank you for all the help! I need to implement it with PHP/HTML and Bootstrap to Laravel :)

<a class="dropdown-item" onclick="showMySection()" href="#">Books</a>
<a class="dropdown-item" onclick="showMySection1()" href="#">Movies</a>


<script type="text/javascript">

function showMySection(){
     document.getElementsByClassName("dropdown-menu-2-hidden-if-movies-selected-in-field-1").style.display = 'block';
     document.getElementsByClassName("dropdown-menu-3-hidden-if-books-selected-in-1").style.display = 'none';    
}

function showMySection1(){
    document.getElementsByClassName("dropdown-menu-2-hidden-if-movies-selected-in-field-1").style.display = 'none';
    document.getElementsByClassName("dropdown-menu-3-hidden-if-books-selected-in-1").style.display = 'block';    
}       
</script>

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM