使用Yii2过滤占位符

时间:2015-06-25 11:45:56

标签: php gridview yii2

有没有人知道如何在Yii2 Framework的Gridview过滤器上实现占位符或工具提示?我需要一些能够让用户知道文本框实际上是搜索过滤器的东西。

期待听到回复。

Preview

2 个答案:

答案 0 :(得分:14)

占位符可以通过以下方式实现:

<?= GridView::widget([
    'dataProvider' => $dataProvider,
    'filterModel'  => $searchModel,
    'columns'      => [
        [
            'attribute' => 'name',
            'filterInputOptions' => [
                'class'       => 'form-control',
                'placeholder' => 'Type in some characters...'
             ]
        ],
        ['class' => 'yii\grid\ActionColumn' ],
    ],
]); ?>
应该提供

class,虽然它不是必须的 - 它只是默认的样式类。

全球设置

我找到的唯一方法是在 config / web.php 中用于应用程序配置:

$config = [
    ...
    'on beforeRequest'          => function ($event) {
        Yii::$container->set('yii\grid\DataColumn', [
            'filterInputOptions' => [
                'class'       => 'form-control',
                'placeholder' => 'Type in some characters...'
            ]
        ]);
    },
    ...
];

这是event handler。在每个请求中,DataColumn将配置为使用占位符。可以找到一些详细信息here。现在,您不需要调整任何GridView配置以获得占位符。当然,在处理程序中,您也可以更改其他配置。

答案 1 :(得分:2)

yon也可以将switchint newA = a - 2*b; byte option = newA < 0 ? 0 : newA < A? 1 : 2; switch(option) { case 0 : // your code for NewA < 0 break; case 1 : // your code for NewA < A break; case 2 : // your code for NewA > A break; }

一起使用
tooltip/title