我正在努力Yii2。我有一个gridviewwith复选框,并单击一个按钮,然后使用ajax将其重定向到动作控制器。
<?= Html::a('Disconnect', ['dco'], ['class' => 'btn btn-success', 'id'=>'dco']) ?>
<?php Pjax::begin(); ?>
<?= GridView::widget([
'dataProvider' => $dataProvider,
'filterModel' => $searchModel,
'columns' => [
['class' => 'yii\grid\CheckboxColumn', 'checkboxOptions' => function($d) {
return ['value' => $d['msn']];
}],
'ref_no',
'dept_code:ntext',
'dept_name:ntext',
'allowed_units',
'msn',
'units_consumed',
[
'label' => 'Disconnected',
'attribute' => 'disconnected',
'format'=>'raw',
'contentOptions' => ['style'=>'text-align:center'],
'value' => function($model){
return $model->disconnected == 1 ? '<span class="glyphicon glyphicon-ok text-success"></span>' : '<span class="glyphicon glyphicon-remove text-danger"></span>';
},
'filter' => Html::activeDropDownList($searchModel, 'disconnected', [''=>'All','1'=>'Yes','0'=>'No'], …Run Code Online (Sandbox Code Playgroud) 我需要从gridview小部件视图中的一组复选框中将行插入到表中.
我的_add.php代码:
$itemsQuery = Inventory::find();
$itemsQuery->andFilterWhere(['inv_status' => 1, 'inv_condition' => 2]);
$dataProvider = new ActiveDataProvider([
'query' => $itemsQuery,
]);
echo GridView::widget([
'id' => 'griditems',
'dataProvider' => $dataProvider,
'columns' => [
['attribute' => 'inv_group', 'value' => 'invGroup.inv_group'],
['attribute' => 'inv_class', 'value' => 'invClass.inv_class'],
'brand',
'model',
'description',
['class' => 'yii\grid\CheckboxColumn'],
],
]);
Run Code Online (Sandbox Code Playgroud)
我尝试过使用JavaScript,但是我无法得到结果:
$('element').one('click',function() {
var keys = $('#griditems').yiiGridView('getSelectedRows');
$.post({
url: 'picked-items/processselected', // your controller action
dataType: 'json',
data: {keylist: keys},
success: function(data) {
if (data.status === 'success') {
alert('Total price is …Run Code Online (Sandbox Code Playgroud)