2016-10-03 232 views
1

我有一个涉及卡车验证的网格。我希望网格的内容在没有页面刷新的情况下进行更改。服务器数据库更改后自动刷新yii2网格

目前这项工作当页面刷新,但我希望它工作,即使当一个页面不刷新,即当服务器数据库中的内容更改。

这是电网

<?php 

$gridColumns = [ 
['class' => 'kartik\grid\SerialColumn'], 
    'reg_no', 
[ 
    'attribute'=>'truck_category', 
    'value'=>'truckCategory.category' 
], 

[ 
    'class' => 'kartik\grid\ActionColumn', 
    'vAlign'=>'middle', 
    'urlCreator' => function($action, $model, $key, $index) { return '#'; }, 
    'viewOptions'=>['title'=>"vdgdv", 'data-toggle'=>'tooltip'], 
    'updateOptions'=>['title'=>"update", 'data-toggle'=>'tooltip'], 
    'deleteOptions'=>['title'=>"delete", 'data-toggle'=>'tooltip'], 
    ] 
]; 


echo GridView::widget([ 
'dataProvider' => $dataProvider, 
'filterModel' => $searchModel, 
'columns' => $gridColumns, 
'containerOptions' => ['style'=>'overflow: auto'], // only set when $responsive = false 
'beforeHeader'=>[ 
    [ 
     'options'=>['class'=>'skip-export'] // remove this row from export 
    ] 
], 
'toolbar' => [ 
    [], 
    '{export}', 
    '{toggleData}' 
], 
'pjax' => true, 
'bordered' => true, 
'striped' => false, 
'condensed' => false, 
'responsive' => true, 
'hover' => true, 
'floatHeader' => true, 
'showPageSummary' => true, 
'panel' => [ 
    'type' => GridView::TYPE_PRIMARY 
], 

]); ?>

这是使网格控制器

public function actionTrackingcenter() 
{ 
    $query = Truck::find()->where(['truck_status'=>5]); 
    $searchModel = new TruckSearch(); 
    $dataProvider = $searchModel->search(Yii::$app->request->queryParams,$query); 

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

} 

可能有人给我如何能实现自动改变方向

+1

你有没有想过JavaScript(例如jQuery)? – sk001

+1

你需要使用pjax这里是一个例子https://www.youtube.com/watch?v=ZhblqEROLWo –

+0

谢谢我得到的概念 –

回答

1

您可以设置时间间隔低于使用jQuery的

<?php 

$this->registerJs(' 
    setInterval(function(){ 
     $.pjax.reload({container:"YOUR_PJAX_CONTAINER_ID"}); 
    }, 10000);', \yii\web\VIEW::POS_HEAD); 
?> 

此代码将你的GridView代码之后是地方

这将重新加载你的Pjax网格每10秒

+0

谢谢我这样做...请为我回答这一个http:// stackoverflow.com/questions/39873040/calling-a-function-on-grid-action-coumn-click –

相关问题