整理文檔,發現一個用GridView實現數據全選及批量刪除按鈕示例,稍微整理精簡一下做下分享。
先來看實現的效果
關鍵代碼如下:
<?= GridView::widget([ 'dataProvider' => $dataProvider, 'showFooter' => true, //設置顯示最下面的footer 'id' => 'grid', 'columns' => [ [ 'class'=>CheckboxColumn::className(), 'name'=>'id', 'headerOptions' => ['width'=>'30'], 'footer' => '<button href="#" rel="external nofollow" class="btn btn-default btn-xs btn-delete" url="'. Url::toRoute('admin/delete') .'">刪除</button>', 'footerOptions' => ['colspan' => 5], ], ['attribute' => 'id', 'footerOptions' => ['class'=>'hide']], //其他列每個都要增加footerOptions項,設置class為hide,到達隱藏效果; ['attribute' => 'username', 'footerOptions' => ['class'=>'hide']], [ 'attribute' => 'status', 'value' => function($model){ if ($model->status == Admin::STATUS_ACTIVE){ return '啟用'; } return '禁用'; }, 'footerOptions' => ['class'=>'hide'] ], ['class' => 'yii\grid\ActionColumn', 'header' => '管理操作', 'footerOptions' => ['class'=>'hide']], ], 'layout' => "{items}\n{pager}" ]); ?>
最后已選數據的獲取:
var ids = $("#grid").yiiGridView("getSelectedRows");
獲取數據后就可以ajax提交到想要的controller
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持。
【網站聲明】本站除付費源碼經過測試外,其他素材未做測試,不保證完整性,網站上部分源碼僅限學習交流,請勿用于商業用途。如損害你的權益請聯系客服QQ:2655101040 給予處理,謝謝支持。