Проблема с кнопками просмотра сетки Yii2 (возможно, после pjax)

#yii2 #yii2-advanced-app #yii2-model

#yii2 #yii2-advanced-app #yii2-модель

Вопрос:

 <?= GridView::widget([
    'id' => 'CompanyGrid',
    'dataProvider' => $dataProvider,
    'filterModel' => $searchModel,
    'floatHeader'=>true,
    'floatOverflowContainer'=>true,
    'floatHeaderOptions'=>['top'=>'0'],
    'pjax'=>true,  
    'pjaxSettings' => [
        'options' => [
            'enablePushState' => false,
            'enableReplaceState' => true,
        ]
    ],
    'hover'=>true,
    'toolbar' => [
        '{export}',
        '{toggleData}'
    ], 
    'panel' => [
        'heading'=>'<h3 class="panel-title"><i class="glyphicon glyphicon-globe"></i> Companies</h3>',
        'type'=>'secondary',
        'before'=>Html::button('Create Company', ['value'=>Url::to('index.php?r=Company/company/create'), 'title' => 'Create Company', 'class' => 'btn btn-success', 'id' => 'modalButton']),
        'after'=>false,
    ],
    'columns' => [
        ['class' => 'kartikgridSerialColumn'],

        'CompanyID',
        'CompanyName',

        ['class' => 'kartikgridActionColumn',
            'template' => '{view} {update} {delete}',
            'buttons' => [
                'view' => function($url, $model){
                    return Html::a('<span class="fa fa-eye"></span>', ['view', 'id' => $model->CompanyID], [
                        'class' => 'activity-view-link',
                        'data-pjax'=>'w0',
                        'title' => Yii::t('yii', 'View Company: '.$model->CompanyID),
                            'data-toggle' => 'modal',
                            'data-target' => '#modal',
                    ]);                        
                },
                'update' => function($url, $model){
                    return Html::a('<span class="fa fa-edit"></span>', ['update', 'id' => $model->CompanyID], [
                        'class' => 'activity-view-link',
                        'title' => Yii::t('yii', 'Edit Company: '.$model->CompanyID),
                            'data-toggle' => 'modal',
                            'data-target' => '#modal',
                    ]); 
                },                            
                'delete' => function($url, $model){
                    return Html::a('<span class="fa fa-trash"></span>', ['delete', 'id' => $model->CompanyID], [
                        'class' => '',
                        'data' => [
                            'confirm' => 'Are you absolutely sure? This action is not reversible',
                            'method' => 'post',
                        ],
                    ]);
                }                           
            ],
        ],
    ],
]); ?>
 

В контроллере

 public function actionView($id)
{
    $model = Company::findOne($id);
    return $this->renderAjax('view', [
        'model' => $model,          
    ]);
}
 

Я новичок в yii2-advance-apps и пытаюсь решить эту проблему. Уже работал над этой проблемой и не могу найти никакого решения для этого.
Проблема в том, что когда я нажимаю на кнопки действий gridview, это работает. Однако после PJax кнопка просто больше не работает.
Однако, если я перезагружу страницу, кнопка снова заработает.
Как решить эту проблему. Заранее благодарю вас.


Комментарии:

1. я полагаю, у вас есть модальный и javascript, который установлен в готовом документе? Вы также должны установить свой javascript в pjax: успех. $(document).on('pjax:success', function() { //your js });

Ответ №1:

'data-pjax' => 0, в настройках кнопок действий, а не «w0»