@Leopandro
Разработчик CRM/ERP систем

Как PJAX-ом обновить другую часть страницы?

Main.php файл:
<div class="wrap">
    <? \yii\widgets\Pjax::begin()?>
    <?php
    NavBar::begin([
        'brandLabel' => 'Название компании',
        'brandUrl' => Yii::$app->homeUrl,
        'options' => [
            'id' => 'ww',
            'class' => 'navbar-inverse navbar-relative',
        ],
    ]);

    echo Nav::widget([
        'options' => ['class' => 'navbar-nav navbar-right', 'id' => 'ww'],
        'items' => User::getMenuItemsByRoleUser(!Yii::$app->user->isGuest ? Yii::$app->user : false,Yii::$app->user->isGuest)
    ]);
    NavBar::end();
    ?>
    <? \yii\widgets\Pjax::end()?>
    <div class="container" id="content_inner">
        <? \yii\widgets\Pjax::begin(['timeout' => '3000'])?>
        <?= Breadcrumbs::widget([
            'homeLink'=>[
                'label' => 'Главная',  // required
                'url' =>  \yii\helpers\Url::home(),      // optional, will be processed by Url::to()
            ],
            'links' => isset($this->params['breadcrumbs']) ? $this->params['breadcrumbs'] : [],
        ]) ?>

        <?= $content ?>
        <? \yii\widgets\Pjax::end()?>
    </div>
</div>

При нажатии на ссылку NavBar-а мне возвращается аяксом контент, который нужно поместить в как это сделать? Или мне лучше целую страницу возвращать(тогда как это сделать)?

Вот так выглядит это визуально:
cdcbdb68a71e469482a70034857b561a.png
  • Вопрос задан
  • 851 просмотр
Пригласить эксперта
Ответы на вопрос 1
@matperez
Можно попробовать так
https://github.com/defunkt/jquery-pjax#pjax

Контейнеру, в котором у вас находится контент нужно задать id, например #content-pjax-container. А потом в обработчике клика на ссылку вызывать что-то такое..

var url = $(this).attr('href');
$.pjax({url: url, container: '#content-pjax-container'})
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы