Добрый вечер.
Думаю что можно попробовать так (набросал пример на коленке):
<?= Html::a('1', ['index', 'columns' => 1], ['class' => 'btn btn-success']) ?>
<?= Html::a('2', ['index', 'columns' => 2], ['class' => 'btn btn-success']) ?>
<?= GridView::widget([
'dataProvider' => $dataProvider,
'filterModel' => $searchModel,
'columns' => $columns
]); ?>
В контролере:
public function actionIndex()
{
if(Yii::$app->request->get('columns') == 1){
$searchModel = new AutobazaAddressSearch();
$dataProvider = $searchModel->search(Yii::$app->request->queryParams);
$columns = [
'id',
'client',
'firma'
];
}
else{
$searchModel = new CarControlSearch();
$dataProvider = $searchModel->search(Yii::$app->request->queryParams);
$columns = [
'id',
'mark',
'model'
];
}
return $this->render('index', [
'searchModel' => $searchModel,
'dataProvider' => $dataProvider,
'columns' => $columns
]);
}
Никакого ajax я сюда не прикреплял, но думаю, что Вы сами разберётесь что к чему. Можно использовать Pjax без настроек, должно сработать