как установить многоуровневое выпадающее меню с помощью bootstrap3 - PullRequest
0 голосов
/ 20 октября 2019

Мне нужно разместить подменю рядом с главным меню. В моем коде оно перекрывает главное меню.

 for (var i = 0; i < data.length; i++){
    var PRODUCT_NAME=data[i]['PRODUCT_NAME'];
    $("#cust").append('<li class="dropdown" id="first"><a data-toggle="dropdown" class="dropdown-toggle" id='+PRODUCT_NAME+' name="master" href="#">'+PRODUCT_NAME+
                      '<span class="caret"></span></a><ul class="dropdown-menu" id=second'+PRODUCT_NAME+'></ul></li>');

    $('#second'+PRODUCT_NAME).append('<li class="list-group-item" id="second"><a id='+data[i]['CUSTOMER_NAME']+' name="master" href="#">'+data[i]['CUSTOMER_NAME']+
             '</a><ul class="dropdown-menu" id=third'+i+CUSTOMER_NAME+'></ul></li>');

$('#third'+i+CUSTOMER_NAME).append('<li class="list-group-item"><a data-toggle="dropdown" class="dropdown-toggle" aria-expanded="true" id='+data[i]['MASTER_ID']+' name="master_id"
 href="#">Q_MASTERID_'+data[i]['MASTER_ID']+'_CLUSTER</a></li>');

css

 .dropdown-submenu {
      position: relative;
    }

    .dropdown-submenu .dropdown-menu {
      top: 0;
      left: 100%;
      margin-top: -1px;
    }

вывод моего кода: My output

я хочу получить следующий вид вывода:

Actually needed

1 Ответ

0 голосов
/ 20 октября 2019

Поскольку U r использует append() Метод append() вставляет указанное содержимое в конец выбранных элементов.

Не делайте, просто используйте Bootstrap class

Youнужно добавить код Bootstrap с помощью class, который уже написан на CSS-файле начальной загрузки, и вам нужно добавить для него файл Javascript

$(document).ready(function(){
  $('.dropdown-submenu a.test').on("click", function(e){
    $(this).next('ul').toggle();
    e.stopPropagation();
    e.preventDefault();
  });
});
.dropdown-submenu {
  position: relative;
}

.dropdown-submenu .dropdown-menu {
  top: 0;
  left: 100%;
  margin-top: -1px;
}
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.0/css/bootstrap.min.css">
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.0/js/bootstrap.min.js"></script>
  
  <div class="container">
  <h2>Multi-Level Dropdowns</h2>
                                        
  <div class="dropdown">
    <button class="btn btn-default dropdown-toggle" type="button" data-toggle="dropdown">Tutorials
    <span class="caret"></span></button>
    <ul class="dropdown-menu">
      <li><a tabindex="-1" href="#">HTML</a></li>
      <li><a tabindex="-1" href="#">CSS</a></li>
      <li class="dropdown-submenu">
        <a class="test" tabindex="-1" href="#">New dropdown <span class="caret"></span></a>
        <ul class="dropdown-menu">
          <li><a tabindex="-1" href="#">2nd level dropdown</a></li>
          <li><a tabindex="-1" href="#">2nd level dropdown</a></li>
          <li class="dropdown-submenu">
            <a class="test" href="#">Another dropdown <span class="caret"></span></a>
            <ul class="dropdown-menu">
              <li><a href="#">3rd level dropdown</a></li>
              <li><a href="#">3rd level dropdown</a></li>
            </ul>
          </li>
        </ul>
      </li>
    </ul>
  </div>
</div>

Это JSFiddle , вы можете редактировать и просматривать Здесь, на JSFiddle

Вы можете прочитать документацию о выпадающем Здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...