如何在Yii2 gridview中将动作按钮显示为下拉菜单?
我想在Yii 2 gridview中将动作按钮显示为下拉菜单。我如何在不使用任何扩展的情况下实现这一点 我已经添加了下面的源代码-如何在Yii2 gridview中将动作按钮显示为下拉菜单?,gridview,yii,yii2,yii2-advanced-app,Gridview,Yii,Yii2,Yii2 Advanced App,我想在Yii 2 gridview中将动作按钮显示为下拉菜单。我如何在不使用任何扩展的情况下实现这一点 我已经添加了下面的源代码- <?= GridView::widget([ 'dataProvider' => $dataProvider, 'filterModel' => $searchModel, 'columns' => [ ['class' => 'yii\grid\SerialColumn'],
<?= GridView::widget([
'dataProvider' => $dataProvider,
'filterModel' => $searchModel,
'columns' => [
['class' => 'yii\grid\SerialColumn'],
'id',
'name',
['class' => 'yii\grid\ActionColumn',
'template'=>'{view}{update}{delete}',
'buttons' => [
'view' => function ($url, $model) {
return Html::a('<span class="glyphicon glyphicon-eye-open"></span>', $url, [
'title' => Yii::t('app', 'View'),
]);
},
'update' => function ($url, $model) {
return Html::a('<span class="glyphicon glyphicon-pencil"></span>', $url, [
'title' => Yii::t('app', 'Update'),
]);
},
],
'urlCreator' => function ($action, $model, $key, $index) {
if ($action === 'view') {
$url ='/site/view?id='.$model->id;
return $url;
}
if ($action === 'update') {
$url ='/site/update?id='.$model->id;
return $url;
}
}
],
],
]); ?>
Google“Bootstrap下拉列表”,然后用您找到的内容替换“template”=>“{view}{update}{delete}”中的操作。保留这三个动作而不是文本
问候。以下是我是如何做到的:
使用yii\bootstrap\ButtonDropdown;
// ... GridView配置。。。
[
'class'=>'yii\grid\ActionColumn',
'模板'=>'{all}',
“按钮”=>[
'all'=>函数($url、$model、$key){
返回按钮下拉::小部件([
'encodeLabel'=>false,//如果要在按钮标签上使用html
“标签”=>“选项”,
“下拉列表”=>[
'encodeLabels'=>false,//如果要在项目标签上使用html
'项目'=>[
[
'label'=>\Yii::t('Yii','View'),
'url'=>['view','id'=>$key],
],
[
'label'=>\Yii::t('Yii','Update'),
'url'=>['update','id'=>$key],
'visible'=>true,//如果要根据条件隐藏项目,请使用此选项
],
[
'label'=>\Yii::t('Yii','Delete'),
“链接选项”=>[
“数据”=>[
'方法'=>'发布',
'确认'=>\Yii::t('Yii','您确定要删除此项目吗?'),
],
],
'url'=>['delete','id'=>$key],
“可见”=>true,//同上
],
],
“选项”=>[
'class'=>'右下拉菜单',//右下拉菜单
],
],
“选项”=>[
'class'=>'btn default',//btn成功,btn信息等
],
'split'=>true,//如果需要拆分按钮
]);
},
],
],
// ... 其他GridView配置。。。
您可以查看按钮下拉文档。如何在此自定义url并使用弹出的模式显示视图、更新操作?