你能给我一个简单的基本例子,如何在yii2 gridview中获得选定的行。我已经尝试了所有的例子存在于论坛上,但它不工作。我得到了这个错误:无法读取未定义的属性'selectioncolumn'
下面是我的代码:view
<?= GridView::widget([
'dataProvider'=> $dataProvider,
'filterModel' => $searchInstance,
//'containerOptions' => ['class' => 'instance-pjax-container'],
'id' => 'grid',
'export' => false,
'columns' => [
['class' => 'yiigridSerialColumn'],
'codebien',
'designationbien',
'codesousfamille',
'numfacture',
'dt',
['class' => 'yiigridCheckboxColumn'],
['class' => 'yiigridActionColumn'],
],
]);?>
<?= Html::SubmitButton( 'Affecter', [ 'class' => 'btn btn-success' , 'id' =>'x']) ?>
<?php
$script = <<< JS
$(function () {
$('#x').click(function(){
$.post(
[ "listeaffecter",
{
pk : $('#grid').yiiGridView('getSelectedRows')
},]
);
});
});
JS;
$this->registerJs($script);
?>
这里是我的控制器:
public function actionListeaffecter(){
$searchInstance = new InstanceSearch();
$dataProvider = $searchInstance->search(Yii::$app->request->queryParams);
$pk = Yii::$app->request->post('pk');
if ($pk) {
print ($pk);
}
return $this->render('vueListeAaffecter', [
'searchInstance' => $searchInstance,
'dataProvider' => $dataProvider,
]);
}
你可以试试这个方法
$('#your-grid-id').yiiGridView('getSelectedRows');
在你的情况下
$('#grid').yiiGridView('getSelectedRows');