Как динамически добавить «активный» класс в цикле на лезвии Laravel? (Laravel 5.3)

Мой взгляд таков:

<ul class="nav nav-tabs nav-cat">
@foreach($countries as $country)
<li role="presentation"><a href="javascript:;" data-toggle="tab" @click="$refs.player.getPlayer({{ $country->id }})">{{ ucfirst($country->name) }}</a></li>
@endforeach
</ul>

Я хочу добавить class="active" в теге li. Таким образом, когда вкладка нажата, тег li будет активен. И я хочу, чтобы первый цикл тоже был активным

Как мне это сделать?

0

Решение

Если вы будете следовать инструкциям о Переменная Loop Вы найдете полезным $ Петли> первый помощник. Возвращает true, если это первый элемент в массиве. Так что вы можете сделать это:

@foreach($items as $item)
<li class="{{ $loop->first ? 'active' : '' }}">...</li>
@endforeach

Затем нажмите на вкладке class class, если вы хотите переместить класс на активную вкладку, вы должны сделать это с помощью javascript

1

Другие решения

Вы можете использовать JavaScript, чтобы сделать это также!

  1. Установите идентификатор для вашего тега li.
  2. Получите ваш элемент тега li по идентификатору.
  3. .addClass('active');
1

Я использовал пакет Laravel в прошлом, если вам нужно быстрое решение

https://github.com/dwightwatson/active

0
По вопросам рекламы ammmcru@yandex.ru
Adblock
detector