Exebeche
@Exebeche
Осваиваю программирование

Как выделить активную ссылку Pjax?

Имеется меню обернутое Пиджаком, открывает ссылки без перезагрузки и смены адреса.
<?php Pjax::begin(['enablePushState' => false]); ?>
        <div class="row abc-row">
            <div class="abc-nav">
                <div class="abc-nav-line"><span>Sort by:</span>
                    <a href="<?= Url::to(['designer/abc', 'letter' => 'A']) ?>">A</a>
                    <a href="<?= Url::to(['designer/abc', 'letter' => 'B']) ?>">B</a>
                    <a href="<?= Url::to(['designer/abc', 'letter' => 'C']) ?>">C</a>
                    <a href="<?= Url::to(['designer/abc', 'letter' => 'D']) ?>">D</a>
                    <a href="<?= Url::to(['designer/abc', 'letter' => 'E']) ?>">E</a>
                    <a href="<?= Url::to(['designer/abc', 'letter' => 'F']) ?>">F</a>
                    <a href="<?= Url::to(['designer/abc', 'letter' => 'G']) ?>">G</a>
                    <a href="<?= Url::to(['designer/abc', 'letter' => 'H']) ?>">H</a>
                    <a href="<?= Url::to(['designer/abc', 'letter' => 'I']) ?>">I</a>
                    <a href="<?= Url::to(['designer/abc', 'letter' => 'J']) ?>">J</a>
                    <a href="<?= Url::to(['designer/abc', 'letter' => 'K']) ?>">K</a>
                    <a href="<?= Url::to(['designer/abc', 'letter' => 'L']) ?>">L</a>
                    <a href="<?= Url::to(['designer/abc', 'letter' => 'M']) ?>">M</a>
                    <a href="<?= Url::to(['designer/abc', 'letter' => 'N']) ?>">N</a>
                    <a href="<?= Url::to(['designer/abc', 'letter' => 'O']) ?>">O</a>
                    <a href="<?= Url::to(['designer/abc', 'letter' => 'P']) ?>">P</a>
                    <a href="<?= Url::to(['designer/abc', 'letter' => 'Q']) ?>">Q</a>
                    <a href="<?= Url::to(['designer/abc', 'letter' => 'R']) ?>">R</a>
                    <a href="<?= Url::to(['designer/abc', 'letter' => 'S']) ?>">S</a>
                    <a href="<?= Url::to(['designer/abc', 'letter' => 'T']) ?>">T</a>
                    <a href="<?= Url::to(['designer/abc', 'letter' => 'U']) ?>">U</a>
                    <a href="<?= Url::to(['designer/abc', 'letter' => 'V']) ?>">V</a>
                    <a href="<?= Url::to(['designer/abc', 'letter' => 'W']) ?>">W</a>
                    <a href="<?= Url::to(['designer/abc', 'letter' => 'Y']) ?>">X</a>
                    <a href="<?= Url::to(['designer/abc', 'letter' => 'Y']) ?>">Y</a>
                    <a href="<?= Url::to(['designer/abc', 'letter' => 'Z']) ?>">Z</a>
                </div>
            </div>
        </div>
        <div>

            <?= $designers ?>

        </div>


        <?php Pjax::end(); ?>


Все работает чудесно, кроме setFlash, но это я обошел вставкой во вьюху проверки с простым текстом:
<?php if (empty($designers)): ?>

    <p>
        There is no one designer. Please try another letter.
    </p>

    <?php else : ?>


А вот как выделить активный пункт этого меню?
  • Вопрос задан
  • 58 просмотров
Решения вопроса 1
slo_nik
@slo_nik Куратор тега Yii
Добрый вечер.
Используйте виджеты Nav или Menu. У обоих виджетов, для свойства items есть параметр active. Вот при помощи этого параметра и укажите, когда ссылка должна быть активирована, а когда нет.
Например:
'active' => $context->module->id == 'user',
Есть у этих виджетов и другие свойства для определения активных элементов, подробней смотрите по ссылкам.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы