废话不多说了,先给大家展示下效果图,如果大家还很满意请继续往下阅读:
具体怎么实现喃?考虑到一张数据表要下拉效果的字段可能有很多个,我们先在其model中实现一个方法方便后续操作
[
'0'=>'显示','1'=>'删除',],'is_hot'=> [
'0'=>'否','1'=>'是',//有新的字段要实现下拉规则,可像上面这样进行添加
// ......
];
//根据具体值显示对应的值
if ($value !== null)
return array_key_exists($column,$dropDownList) ? $dropDownList[$column][$value] : false;
//返回关联数组,用户下拉的filter实现
else
return array_key_exists($column,$dropDownList) ? $dropDownList[$column] : false;
}
PHP;">
= GridView::widget([
'dataProvider' => $dataProvider,'columns' => [
// ......
[
'attribute' => 'is_hot','value' => function ($model) {
return Article::dropDown('is_hot',$model->is_hot);
},'filter' => Article::dropDown('is_hot'),[
'attribute' => 'is_delete','value' => function ($model) {
return Article::dropDown('is_delete',$model->is_delete);
},'filter' => Article::dropDown('is_delete'),// ......
],]); ?>
像这样,我们就简单地实现了两个下拉效果,要实现筛选功能,在你的dataProvider自定添加该字段的搜索条件即可。
编程之家推荐阅读:
关于Yii2 GridView实现下拉搜索教程就给大家介绍这么多,希望对大家有所帮助!
原文链接:https://www.f2er.com/php/19941.html