yii2 gridview范围过滤器

时间:2016-10-04 05:49:06

标签: gridview yii2

我有一个Gridview,每个字段都有过滤器,对于一个字段,我需要使用Range Input来搜索范围内的值。但是当我在第一个过滤器字段中输入值时,数据正在提交。如何在第一个输入字段上禁用提交或如何禁用所有gridview的自动提交?

<?= GridView::widget([
    'dataProvider' => $dataProvider,
    'filterModel' => $searchModel,
    'pjax'=>false,
    'export' => false,
    'columns' => [
        [
            'class'=>'kartik\grid\EditableColumn',
            'attribute'=>'amount',
            'filter' => FieldRange::widget([
                'model' => $searchModel,
                'label' => 'Enter range',
                'name1'=>'valueFrom',
                'name2'=>'valueTo',
                'type' => FieldRange::INPUT_SPIN,
            ]),
        ],
        ...
      ]

2 个答案:

答案 0 :(得分:1)

[
    'class' => 'yii\grid\DataColumn', 
    'attribute' => 'user_id', 
    'visible' => true,
    'format' => 'raw',
    'value' => function ($data) {
        return Html::a($data->user_id, ['/members/index', 'k' => 'mid', 'word' => $data->user_id], ['target' => '_blank']);
    },
    'filter' => FieldRange::widget([
        'model' => $searchModel,
        'attribute1' => 'user_id_from',
        'name1'=>'UserTagSearch[user_id_from]',
        'value1' => '',
        'attribute2' => 'user_id_to',
        'name2'=>'UserTagSearch[user_id_to]',
        'value2' => '',
        'separator' => 'to',
        'useAddons' => false,
        'template' => '{widget}{error}',
        'widgetContainer' => [
            'style' => 'margin-bottom: -15px'
        ],
        'type' => FieldRange::INPUT_TEXT,
    ]),
    'contentOptions' => ['style' => 'width:10%'],
],

您掌握的每个输入,指定三个字段:&#39; attribute1&#39;,&#39; name1&#39;,&#39; value1&#39;。

答案 1 :(得分:-2)

你试过这个GridView吗?它允许您创建高级GridView,您可以在两个日期之前过滤列。

http://demos.krajee.com/grid-demo