如何在 yii2 中动态显示 pageSize?

阿努普·库马尔

现在我在搜索功能中设置了静态页面大小,但现在我需要为用户创建下拉列表以从前端更改页面大小。例如像 10,20,50,100。

我得到了代码,但它适用于 yii 以前的版本。

重生

如果我必须这样做,我将使用以下方法。

  • 为页面大小创建一个下拉菜单layout,如果您想要在summary文本和items列表之间或在 gridview 之前添加它,您可以调整gridview 选项内的下拉列表。像这张图片,你可以用 div 包裹它来自己调整 CSS。

在此处输入图片说明

要做的主要事情是id将下拉列表包含到filterSelector选项中,以便每次过滤 gridview 时,下拉值也会被提交,并且每当您更改下拉列表时也是如此。

您的 GridView 将如下所示

GridView::widget([
    'dataProvider' => $dataProvider,
    'layout'=>'{summary}'.Html::activeDropDownList($searchModel, 'myPageSize', [1 => 10, 2 => 20, 50 => 50, 100 => 100],['id'=>'myPageSize'])."{items}<br/>{pager}",
    'filterModel' => $searchModel,
    'filterSelector' => '#myPageSize',
    'columns'=>[
       // your column configurations.......
    ]
]);
  • 在 searchModel 中声明一个公共属性

    public $myPageSize

  • 将该属性添加到safe规则中searchModel

    [['myPageSize'],'safe']

  • 然后search()SearchModel您正在使用的相对内部更新您的方法GridView您应该使用定义的新属性分配insidepageSize选项,但请确保在语句之后添加此行query$dataProvider$this->load($params)

    见下文

      $dataProvider->pagination->pageSize = ($this->myPageSize !== NULL) ? $this->myPageSize : 10;`
    

在这里,我们将默认页面大小设置为等于我们创建的下拉列表中的最小选项,否则在您更改下拉列表时它会更新。

现在尝试更改下拉列表,您会看到它起作用。希望这可以帮助

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在YII2中建立动态菜单

来自分类Dev

Yii2:如何在Yii2中显示没有gridview的搜索结果

来自分类Dev

如何在Yii 2.0中安装“ amnah / yii2”?

来自分类Dev

Yii2:如何在CheckboxList中显示选中的值

来自分类Dev

如何在 yii2 中显示图像

来自分类Dev

Yii2:如何在yii2中添加文本区域

来自分类Dev

如何在Django中动态显示图像

来自分类Dev

如何在React中动态显示按钮点击次数

来自分类Dev

如何在VueJS中动态显示图像?

来自分类Dev

如何在HTML页面中动态显示php代码

来自分类Dev

如何在Django管理中动态显示内联

来自分类Dev

如何在SSRS中动态显示标题

来自分类Dev

如何在asp.net中动态显示记录?

来自分类Dev

如何在 django 模板中动态显示图像?

来自分类Dev

Yii2 Listview如何在视图中显示数据

来自分类Dev

如何在yii2中更改布局

来自分类Dev

事件如何在Yii2中运作

来自分类Dev

yii2:如何在邮件中呈现视图

来自分类Dev

如何在Yii2 ActiveRecord中获取属性标签

来自分类Dev

如何在Yii2中打开HTTP缓存?

来自分类Dev

如何在Yii2中获得用户角色?

来自分类Dev

如何在Yii2中处理多对多关系

来自分类Dev

如何在yii2 GridView中启用Ajax更新?

来自分类Dev

如何在Yii2中禁用资产缓存?

来自分类Dev

如何在yii2中发送ajax表单

来自分类Dev

如何在Yii2中获取访客用户sessionid?

来自分类Dev

如何在yii2中进行ajax调用?

来自分类Dev

如何在Yii2中管理资产?

来自分类Dev

如何在Yii2中使用swiftMailer