2015-10-02 186 views
2

我有一個觀點event,它有一個額外的動作按鈕,重定向到 這裏checkin/index頁是我的GridView設置頁面標題yii2

<?= GridView::widget([ 
    'id'=>'event-table', 
    'dataProvider' => $dataProvider, 
    'filterModel' => $searchModel, 
    'columns' => [ 
     'title', 
     'location', 
     [ 
      'class' => 'yii\grid\ActionColumn', 
      'template' => '{checkin/index} {view} {update} {delete} ', 
      'contentOptions' => ['class'=>'action-td'], 

      'buttons' => [ 
       'checkin/index' => function ($url,$model) { 
        return Html::a('<div id="notification-container"><span data-pjax=false class="glyphicon glyphicon-user"></span>'.EventSearch::showCheckin($model->id) .'</div>', $url,['data-pjax' => true]); 
       }, 
      ] 
     ], 
    ] 
]); 

使用時點擊該按鈕會打開一個checkin/index 頁,所以我想送其上點擊按鈕,使 的checkin/index頁面上,我可以使用該標題$this->title

行的title有任何W AY通過對操作按鈕數據點擊 這裏是我的checkin/index代碼

public function actionIndex() 
{ 

    $searchModel = new CheckinSearch(); 
    $dataProvider = $searchModel->search(Yii::$app->request->queryParams); 

    return $this->render('index', [ 
     'searchModel' => $searchModel, 
     'dataProvider' => $dataProvider, 
    ]); 
} 

我不能下面的代碼使用的,因爲我的$model只會有event_id作爲相關表的價值和checkin/index頁我用GridView和關係,以顯示標題直接使用event.title

$this->title = isset($dataProvider->models[0]->title) ? $dataProvider->models[0]->title : 'empty result'; 
+0

你想通過網址傳遞數據? –

+0

@InsaneSkulll我只需要設置頁面的標題..無論如何我可以...流是這樣的...在'事件/索引'行中gridview用戶將點擊動作列按鈕,它會打開'特定記錄的checkin/index'頁面...所以我想獲得用戶點擊的行的標題並將其傳遞到下一頁以設置頁面標題 –

+0

您可以簡單地通過url傳遞數據並讓它們打開慾望頁面並將其傳遞給頁面標題。 –

回答

2

例如

'buttons' => [ 
    'checkin/index' => function ($model) { 
     return Html::a('<div id="notification-container"><span data-pjax=false class="glyphicon glyphicon-user"></span>', Url::to(['checkin/index', 'title' => $model->title]), $options); 
    } 
], 

在你checkin/index

$this->title => $_REQUSET['title']; 

更多閱讀a()to()

+0

再次感謝您的幫助......它幫助..只需修改一下,但解決了我的問題 –

相關問題