Member 13777741 Ответов: 1

Asp.net - выпадающее меню bootstrap navbar не работает должным образом


Я немного поиграл с этим и до сих пор имел довольно большой успех, но есть только одна проблема, которую я лично не могу решить.

Я использую bootstrap для создания своей навигационной панели и всего, что в ней есть, что по большей части работает нормально, пока я не дойду до точки, где я использую выпадающие списки.

что я хотеть это должно выглядеть примерно так этот.

Однако самый оптимальный результат, который я получил до сих пор, выглядит так этот.

Что я уже пробовал:

@model MessePrototyp.Models.MenuItem

<li class="dropdown-submenu">

    <a href="#" class="dropdown-item dropdown-toggle" data-toggle="dropdown">@Model.Caption</a>

    <ul class="dropdown-menu">
        @foreach (var subitem in @Model.MenuItems)
        {
            if (subitem.MenuItems.Count != 0)
            {

                @await Html.PartialAsync("MenuItem", @subitem)

            }
            else
            {
                <li><a a class="dropdown-item" asp-area="" asp-controller="@subitem.Controller" asp-route-id="@subitem.Notation" asp-action="@subitem.Action">@subitem.Caption</a></li>


            }


        }
    </ul>
</li>


Это код, который производит мой "оптимальный" результат. Проблема, или, по крайней мере, бит кода, который генерирует дублирующуюся подточку, кажется, является жирной линией. Однако я не смог найти способ обойти его, поскольку все, что я пробовал, давало мне результаты, которые еще дальше от того, что я ищу.

Richard Deeming

Вы используете Загрузочный 4[^] или Бутстрап 3[^]?

1 Ответов

Рейтинг:
1

Vincent Maverick Durano

Вы можете попробовать что-то вроде этого:

<div class="btn-group">
  <button type="button" class="btn">Konfiguration</button>
  <button type="button" class="btn dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
    <span class="caret"></span>
    <span class="sr-only">Toggle Dropdown</span>
  </button>
  <ul class="dropdown-menu">
   @foreach (var subitem in @Model.MenuItems)
        {
            if (subitem.MenuItems.Count != 0)
            {

                @await Html.PartialAsync("MenuItem", @subitem)

            }
            else
            {
                <li><a asp-area="" asp-controller="@subitem.Controller" asp-route-id="@subitem.Notation" asp-action="@subitem.Action">@subitem.Caption</a></li>

            }

        }
  </ul>
</div>