浅析Yii2 GridView实现下拉搜索教程
程序员文章站
2023-12-19 12:50:46
废话不多说了,先给大家展示下效果图,如果大家还很满意请继续往下阅读:
具体怎么实现喃?考虑到一张数据表要下拉效果的字段可能有很多个,我们先在其model中实现一个方法...
废话不多说了,先给大家展示下效果图,如果大家还很满意请继续往下阅读:
具体怎么实现喃?考虑到一张数据表要下拉效果的字段可能有很多个,我们先在其model中实现一个方法方便后续操作
/** * 下拉筛选 * @column string 字段 * @value mix 字段对应的值,不指定则返回字段数组 * @return mix 返回某个值或者数组 */ public static function dropdown ($column, $value = null) { $dropdownlist = [ 'is_delete'=> [ '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; }
然后我们上代码看看具体怎么实现的下拉搜索
<?= 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 日期格式化并实现日期可搜索教程
关于yii2 gridview实现下拉搜索教程就给大家介绍这么多,希望对大家有所帮助!
推荐阅读
-
浅析Yii2 GridView实现下拉搜索教程
-
浅析Yii2 gridview实现批量删除教程
-
浅析Yii2 GridView 日期格式化并实现日期可搜索教程
-
浅析Yii2 GridView实现下拉搜索教程,yii2gridview
-
浅析Yii2 GridView 日期格式化并实现日期可搜索教程,yii2gridview
-
浅析Yii2 gridview实现批量删除教程,yii2gridview
-
浅析Yii2 gridview实现批量删除教程,yii2gridview_PHP教程
-
浅析Yii2 gridview实现批量删除教程,yii2gridview
-
浅析Yii2 GridView 日期格式化并实现日期可搜索教程,yii2gridview_PHP教程
-
浅析Yii2 GridView 日期格式化并实现日期可搜索教程,yii2gridview